您的位置:首页 > 移动开发 > Android开发

android自定义titlebar

2016-04-27 15:10 459 查看
首先,修改标题栏的宽度和背景,在style.xml中添加:
<style name="MyActivityTheme" parent="android:Theme.Light" >
<item name="android:windowTitleBackgroundStyle">@style/windowTitleBackgroundStyle</item>
<item name="android:windowTitleStyle">@style/windowTitleStyle</item>
<!-- Window Header Height -->
<item name="android:windowTitleSize">54dp</item>
</style>

<!-- Preference Settings Window Title -->
<style name="windowTitleBackgroundStyle">
<item name="android:background">#CCE8CF</item>
</style>

<style name="windowTitleStyle">
<item name="android:textColor">#FF0000</item>
<item name="android:paddingLeft">25dp</item>
<item name="android:textSize">20sp</item>
</style>


然后修改AndroidMainfest.xml文件:

[html] view
plaincopy

<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>

接着修改MainActivity:

[html] view
plaincopy

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

}

最后在layout文件夹中添加title.xml文件,内容如下:

[html] view
plaincopy

<?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>

OK,一个简单的自定义标题栏完成了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: