效果如下:
自定义标题栏的过程如下:
1.通过 requestWindowFeature来设置标题栏
2.自定义标题栏样式
3.修改默认标题栏主题
具体过程如下:
1.在oncreate方法中操作
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.main); //软件activity的布局
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.titlebar); //titlebar为自己标题栏的布局
setContentView(R.layout.main); //软件activity的布局
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.titlebar); //titlebar为自己标题栏的布局
2.自定义标题栏样式,即:设置titlebar.xml:
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" > <ImageView android:layout_width="wrap_content" android:layout_alignParentLeft="true" android:layout_height="wrap_content" android:padding="8dp" android:src="@drawable/icon1" /> <TextView android:layout_width="wrap_content" android:layout_centerHorizontal ="true" android:layout_height="wrap_content" android:padding="8dp" android:textSize="20sp" android:text="收藏夹" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:padding="8dp" android:src="@drawable/icon2" /> </RelativeLayout>
3.此时可以在一定程度上定制标题栏, 不过, 这里无法改变标题栏的高度和背景(背景设置之后会在两端有两个非常难看的边框),原因是这样的. 直接像上述代码那样添加title仅仅是把一个子界面添加到原有的title上的, 并没有改变原来的属性, 比如 标题栏大小, 标题栏背景. 这些需要在theme 主题里面定义.。因此需要添加一个新的styles文件,在vaules文件夹下新增一个styles.xml文件如下:
<?xml version="1.0" encoding="utf-8"?> <resources xmlns:android="http://schemas.android.com/apk/res/android"> <style name="CustomWindowTitleBackground"> <item name="android:background">#003300</item> </style> <style name="title" parent="android:Theme"> <item name="android:windowTitleSize">50dp</item> <item name="android:windowTitleBackgroundStyle">@style/CustomWindowTitleBackground</item> </style> </resources>
同时要在androidMainfeast.xml文件中做相应的修改:
<application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:name=".MainActivity" android:label="@string/app_name" android:theme = "@style/title"//修改为新的主题 > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application>
此致完成一个自定义的title。
参考文献:
1. http://www.blogjava.net/Green-nut/articles/332617.html
2. http://guangqiang.iteye.com/blog/1116994
3. http://blog.sina.com.cn/s/blog_684a1d160100umuq.html
相关推荐
xamarin android自定义标题栏,希望能够帮助到大家。。
今天看到很多app都有Title自动隐藏功能,1.这是一个Gradle工程,Gradle的版本是2.10,项目的Compile sdk Version是 23 , Build ...Android自定义ViewGroup实现Title自动隐藏功能源代码分享,Android开发者必看示例。
本文实例讲述了Android编程实现自定义title功能。分享给大家供大家参考,具体如下: 这里我在前面加了个logo,而且改变了title的背景和高度。 首先编写title的布局文件,title.xml: <?xml version=1.0 ...
自定义title标题,方便初学者学习
现在我们公司得app都是差不多得title,所以抽时间自己撸了个常用得标题栏控件,直接在布局中使用。 不过本人还是推荐使用官方toolbar 等官方 新控件 ,效果太炫了。无奈设计要求这样,所以在这个公司干,为了开发...
自定义title的使用方法,可以改变title的样式
Cangol-ActionBar 是一款Android自定义ActionBar组件。 截图: 使用: Maven <groupId>mobi.cangol.mobile <artifactId>actionbar <version>1.0.1 <type>aar Gradle compile 'mobi...
仿招行手机银行APP8.1首页下拉效果...下拉震动出现二楼效果、上滑改变Title背景透明度效果,通过自定义ScrollView监听onTouchEvent下拉震动出现二楼效果,通过监听ScrollView滚动事件实现上滑改变Title背景透明度效果。
主要介绍了Android编程自定义title bar(标题栏)的方法,结合实例形式分析了Android针对标题栏的设置与页面布局操作相关技巧,需要的朋友可以参考下
我们知道,当系统控件并不能满足我们的需求时,我们就需要来创建自定义控件,主要有两种方法 (1)引入布局 下面来自定义一个控件,iPhone的标题栏,创建一个标题栏并不是什么难事,加入两个button一个TextView就行...
自定义HeadView,提供多种常见title开发类型,实现控件的复用,提高开发效率.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
SmartTabLayout 是一个自定义的 Tab title strip, 基于 Google Samples 中的 android-SlidingTabBasic 项目, 滑动时 Indicator 可平滑过渡。效果图:
CustomTitle 自定义toolsbar,编写自己想要的标题栏
简单的自定义控件,可以设置标题,和左右两边的按钮
可以自定义标题栏,
今天小编就为大家分享一篇Android 自定义Dialog去除title导航栏的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
android一个简单易用,能自定义,带title的viewpager,指示器能跟着title的内容大小进行变换