自定义标题栏
注:此方法的自定义标题栏必须继承与Activity而不是AppCompatActivity
布局文件
<?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">
<ImageButton
android:id="@+id/back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#00000000"
android:layout_centerVertical="true"
android:layout_alignParentLeft="true"
android:src="@drawable/fh" />
<TextView
android:id="@+id/titleTv"
android:layout_width="wrap_content"
android:layout_height="30dp"
android:textSize="25dp"
android:textStyle="bold"
android:layout_centerInParent="true"
android:text="欢迎界面" />
<ImageButton
android:id="@+id/add"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#00000000"
android:layout_centerInParent="true"
android:layout_alignParentRight="true"
android:src="@drawable/tj" />
</RelativeLayout>
在Activity中引用
在Activity的onCreate方法中的setContentView(R.layout.activity_main);前插入requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
在setContentView(R.layout.activity_main);方法后引用getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,R.layout.title);调用刚刚写的布局文件
@Override
protected void onCreate(Bundle savedInstanceState) {
//setTheme(R.style.CustomTheme);
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.activity_main);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,R.layout.title);
最后在style文件里的style标签增加一个windowActionBar的声明
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:windowNoTitle">false</item>
<item name="android:windowActionBar">false</item>
<item name="android:windowActionBarOverlay">false</item>
<item name="windowActionBar">false</item>
</style>
运行即可实现自定义标题栏