我正在开发一个xamarin项目(据我所知,这里没有相关性 - android布局属性是相同的)
我正在使用Window.SetFeatureInt (WindowFeatures.CustomTitle, ...)
设置标题(2“列”。我希望为我的标题制作两行文字。这可能吗?我没有取得多大成功。我左上角,右上角和左下角以及右下角的TextViews进行设置。
我以前的尝试最终导致TextViews互相覆盖。
答案 0 :(得分:0)
在这里,我正在设计一个带有图像的XML文件,标题和文本的文本。按钮。这是XML文件。你可以随意使用它,用于完整的应用程序或特定的活动。 如果是活动,请添加此活动的主题标记。对于多行,只需在下面的线性布局中使用文本视图,将其设置为多行true。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="35dip"
android:gravity="center_vertical"
android:background="@android:color/darker_gray">
<ImageView
android:id="@+id/header"
android:background="@drawable/icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Custom Window Text"
android:textColor="@android:color/black"
android:textStyle="bold"/>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
Create a theme in Custom_theme.xml,
<resources>
<style name="CustomWindowTitleBarBG">
<item name="android:background">#323331</item>
</style>
<style name="TitleBarTheme" parent="android:Theme">
<item name="android:windowTitleSize">35dip</item>
<item name="android:windowTitleBackgroundStyle"> @style/CustomWindowTitleBarBG</item>
</style>
修改AndroidManifest.xml文件,如下所示,以应用自定义主题
<application
android:icon="@drawable/icon"
android:label="@string/app_name"
android:theme="@style/TitleBarTheme" >
<activity
android:name=".CustomWindowTitle"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
现在在主java文件add “requestWindowFeature(Window.FEATURE_CUSTOM_TITLE)” &
“getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.window_title)”
这是CustomWindowTitle.java的代码片段
package com.example.android;
import android.app.Activity;
import android.os.Bundle;
import android.view.Window;
public class CustomWindowTitle extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.main);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.window_title);
}
}