Android 自定义TitleBar替换ActionBar的另类方式
来源:互联网 发布:易建联卧推数据 编辑:程序博客网 时间:2024/05/23 11:33
titleBar自定义布局common_title_view.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?xml version=
"1.0"
encoding=
"utf-8"
?>
<RelativeLayout xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"fill_parent"
android:layout_height=
"wrap_content"
>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:layout_alignParentLeft=
"true"
android:src=
"@drawable/abc_ic_clear_mtrl_alpha"
/>
<TextView
android:id=
"@+id/title"
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:layout_centerInParent=
"true"
android:text=
"@string/app_name"
android:textColor=
"@android:color/white"
android:gravity=
"center"
android:textSize=
"20sp"
android:textStyle=
"bold"
/>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:layout_alignParentRight=
"true"
android:src=
"@drawable/abc_ic_search_api_mtrl_alpha"
/>
</RelativeLayout>
Activity中代码
1
2
3
4
5
6
7
@Override
protected
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
getWindow().requestFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.activity_animation);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.common_title_view);
}
因为在Android 3.0开始有了ActionBar,因为我们需要将此Activity的主题放置在values中和values-11中的styles.xml中
values/styles.xml
1
2
3
4
5
6
7
<style name=
"WindowTitleBackground"
>
<item name=
"android:background"
>
@color
/material_deep_teal_500</item>
</style>
<style name=
"MyTheme"
parent=
"android:Theme"
>
<item name=
"android:windowTitleSize"
>50dip</item>
<item name=
"android:windowTitleBackgroundStyle"
>
@style
/WindowTitleBackground</item>
</style>
values-11/styles.xml
1
2
3
4
5
6
7
8
<style name=
"MyBaseTheme"
parent=
"android:Theme"
>
<item name=
"android:windowTitleSize"
>50dp</item>
<item name=
"android:windowTitleBackgroundStyle"
>
@style
/WindowTitleBackground</item>
</style>
<style name=
"MyTheme"
parent=
"MyBaseTheme"
>
<item name=
"android:windowActionBar"
>
false
</item>
</style>
清单文件
1
2
3
4
<activity
android:name=
"com.example.androidtest.CustomTitleBarActivity"
android:label=
"@string/app_name"
android:theme=
"@style/MyTheme"
/>
运行效果
视图层解析,通过这种方式,是的titleBar与ContentView并列,使得ContentView布局更加简便和随意
0 0
- Android 自定义TitleBar替换ActionBar的另类方式
- Android自定义TitleBar/ActionBar
- Android开发之自定义ActionBar和TitleBar
- android自定义Actionbar遇到的一点问题【titlebar以及thme的选择】
- 自定义Android标题栏修改TitleBar的布局
- Android中自定义标题的titlebar
- 自定义Android标题栏修改TitleBar的布局
- Android自定义view,titlebar的返回按钮
- android不显示TitleBar的解决方式
- android自定义的actionbar
- 自定义Android标题栏TitleBar
- android自定义Titlebar
- android自定义titlebar
- Android自定义TitleBar
- android 自定义TitleBar...
- android 自定义Titlebar
- android 自定义Titlebar
- Android 自定义TitleBar
- Flex中的initialize,creationComplete和applicationComplete事件总结
- iPhone屏幕尺寸、分辨率及适配
- BMP文件格式详解(BMP file format)
- iOS 9 适配系列教程
- Android——启动过程详解
- Android 自定义TitleBar替换ActionBar的另类方式
- 【Android Studio】制作清晰Gif截图以作为项目的运行效果
- Java中String类对象的初始化
- Android核心基础-12.多线程断点续传下载
- 安卓:ContentProvider之服务端提供接口,客户端通过接口对数据库中的数据进行操作
- mapreduce中的sequenceFile类,MapFile解析
- Ubuntu 12.04(64位)安装Android Studio
- 内存溢出解决办法
- Linux战地日记——find命令