Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android實現自定義標題欄的方法

Android實現自定義標題欄的方法

編輯:關於Android編程

本文要講自己定義一個標題欄,能加事件。然後可以移值到不同的手機上,基本上不用改什麼,調用也很簡單
在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() { 
 
      @Override 
      public void onClick(View arg0) { 
        if (!menuIsShow) 
          showMenu(); 
        else { 
          hideMenu(); 
        } 
 
      } 
 
    }); 

這樣就可以了:
我們來看看效果

這就是效果了,很簡單吧,想用直接把上面的布局復制過去就OK了!

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved