Android自定义标题栏

Android程序中默认标题栏是灰色背景,内容是工程名字,类似下图:

2011-2-14 10:42 上传
下载附件 (12.97 KB)



修改了标题栏布局,效果如下:




说一下具体步骤。首先,修改标题栏的宽度和背景,在strings.xml中添加:

<style name="CustomWindowTitleBackground">
    <item name="android:background">@drawable/title_bg</item>
</style>
<style name="test" parent="android:Theme">
    <item name="android:windowTitleSize">40dp</item>
    <item name="android:windowTitleBackgroundStyle">@style/CustomWindowTitleBackground</item>
</style>

然后修改AndroidMainfest.xml文件:

<activity android:name=".MainActivity"
                android:theme="@style/test">
          <intent-filter>
              <action android:name="android.intent.action.MAIN" />
              <category android:name="android.intent.category.LAUNCHER" />
          </intent-filter>
      </activity>

红色部分为加载Activity的theme。
接着修改MainActivity:

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.title);
//自定义布局赋值
   }

注意红色部分标记的3行代码,顺序不能颠倒。
最后在layout文件夹中添加title.xml文件,内容如下:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android=" http://schemas.android.com/apk/res/android"
    android:orientation="horizontal" android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <ImageView android:layout_width="wrap_content"
        android:layout_centerVertical=’true’
        android:layout_height="wrap_content"
        android:src="@drawable/ic_launcher_email" />
    <TextView android:layout_width="wrap_content"
        android:layout_centerInParent="true"
        android:layout_height="wrap_content"
        android:text="自定义标题栏" />
</RelativeLayout>

重新部署程序,效果如上图。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值