android 自定义TitleBar
16lz
2021-01-23
android中默认的TitleBar是很单调的,今天我想自定义一个TitleBar,有两种实现方式:
第一种:
把Activity设置成没有Title的,然后在顶部模拟一个Title就可以了,这种方法就不说了;
第二种方法:
自己写一个布局文件,然后赋值给Title,代码如下:
其中,title_layout即你想要的TitleBar布局,如果你还想改变TitleBar的高度的话,那就得修改这个Activity的theme,代码如下:
首先在styles文件中设置一个theme
然后再Mainfest中设置activity的theme:
第一种:
把Activity设置成没有Title的,然后在顶部模拟一个Title就可以了,这种方法就不说了;
第二种方法:
自己写一个布局文件,然后赋值给Title,代码如下:
super.onCreate(savedInstanceState);requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);setContentView(R.layout.main);getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title_layout);
其中,title_layout即你想要的TitleBar布局,如果你还想改变TitleBar的高度的话,那就得修改这个Activity的theme,代码如下:
首先在styles文件中设置一个theme
<?xml version="1.0" encoding="utf-8"?><resources> <style name="custom_window_title_background"> <item name="android:background">@drawable/images</item> </style> <style name="custom_title"> <item name="android:windowTitleSize">64dp</item> <item name="android:windowTitleBackgroundStyle">@style/custom_window_title_background</item> </style> </resources>
然后再Mainfest中设置activity的theme:
<activity android:label="@string/app_name" android:name=".CustomTitleBarActivity" android:theme = "@style/custom_title" > <intent-filter > <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>
更多相关文章
- Eclipse中查看Android源代码
- Android 控件布局实现卡片效果,阴影效果
- Android文件管理器与media数据库的同步问题
- 【Android Developers Training】 42. 从另一台设备接收文件
- Android 键盘布局总结
- android 创建文件夹和文件