Android 自定义标题栏背景
程序员文章站
2023-12-21 10:07:46
设置标题栏背景
1> 准备背景图片: background_pix.png
注:用背景图片比用颜色好处,可以让背景看起来有凹凸感.
2> draw...
设置标题栏背景
1> 准备背景图片: background_pix.png
注:用背景图片比用颜色好处,可以让背景看起来有凹凸感.
2> drawable文件夹下放xml文件
bitmap_repeat.xml
<?xml version="1.0" encoding="utf-8"?> <bitmap xmlns:android="http://schemas.android.com/apk/res/android" android:src="@drawable/title_pic" android:tilemode="repeat"> </bitmap>
3> 定义样式文件style.xml
<?xml version="1.0" encoding="utf-8"?> <resources> <!-- 自定义标题样式 --> <style name="statusbarbackground"> <item name="android:background">@drawable/bitmap_repeat </item> </style> <style name="xtheme" parent="android:theme"> <!-- window attributes --> <item name="android:windowtitlebackgroundstyle">@style/statusbarbackground </item> </style> <!-- 自定义标题样式 --> </resources>
4> 在manifest.xml中引用主题android:theme="@style/xtheme"
<activity android:name=".activity.mainactivty" android:screenorientation="portrait" android:configchanges="keyboardhidden|orientation" android:theme="@style/xtheme"> </activity>
自定义标题栏layout文件ct_title.xml
注: ct_title.xml文件中用如下方式设置标题栏背景会出下填充不满效果
android:background="@drawable/bitmap_repeat "
在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.ct_title); }