標籤:
本文要講自己定義一個標題列,能加事件。然後可以移值到不同的手機上,基本上不用改什麼,調用也很簡單
在layout檔案夾下,建立一個XML。名字叫做layout_title_bar.xml然後來看看布局:
<?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="45.0dip" android:background="@drawable/bg_title_bar" android:gravity="top" > <ImageView android:id="@+id/title_bar_menu_btn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_marginLeft="3.0dip" android:layout_marginRight="3.0dip" android:layout_marginTop="3.0dip" android:gravity="center" android:src="@drawable/ic_top_bar_category" /> <ImageView android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_toRightOf="@id/title_bar_menu_btn" android:background="@drawable/ic_top_divider" /> <TextView android:id="@+id/title_bar_name" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:ellipsize="end" android:gravity="center" android:paddingLeft="75.0dip" android:paddingRight="75.0dip" android:singleLine="true" android:text="Java學習寶典" android:textColor="#ffffff" android:textSize="22sp" /></RelativeLayout>
看下效果:
接下要就是要用了,在要用到的地方:我這裡是activity_main.xml檔案中:
加上一句: <include layout="@layout/layout_title_bar" />這樣就行了,
然後我們要給標題列上的按鈕添加事件,這個更加簡單了:
在MainActivity.java(對應activity_main.xml)中,onCreate函數中添加:事件可以自己改,我這裡是讓它控制左右滑動的功能。
ImageView menuImg = (ImageView) findViewById(R.id.title_bar_menu_btn);menuImg.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View arg0) {if (!menuIsShow)showMenu();else {hideMenu();}}});
這樣就可以了:
我們來看看效果
這就是效果了,很簡單吧,想用直接把上面的布局複製過去就OK了!
Android自訂標題列