Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 關於android開發 >> Android開發之Android Material Design Toolbar自定義隨筆,androidtoolbar

Android開發之Android Material Design Toolbar自定義隨筆,androidtoolbar

編輯:關於android開發

Android開發之Android Material Design Toolbar自定義隨筆,androidtoolbar


一、自定義Toolbar的menu:

在menu下新建menu.xml文件,自定義menu的樣式:

 1 <menu xmlns:android="http://schemas.android.com/apk/res/android"
 2     xmlns:app="http://schemas.android.com/apk/res-auto"
 3     xmlns:tools="http://schemas.android.com/tools"
 4     tools:context=".MainActivity">
 5     <item
 6         android:id="@+id/action_search"
 7         android:orderInCategory="80"
 8         android:title="action_search"
 9         app:showAsAction="ifRoom"
10         android:icon="@drawable/search_ic_selector"/>
11 </menu>

二、自定義Toolbar,Toolbar一般是共用:

新建common_toolbar.xml文件:

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <android.support.v7.widget.Toolbar
 3     xmlns:android="http://schemas.android.com/apk/res/android"
 4     xmlns:app="http://schemas.android.com/apk/res-auto"
 5     android:id="@+id/common_toolbar_top"
 6     android:layout_width="match_parent"
 7     android:layout_height="wrap_content"
 8     android:background="@color/colorPrimary"
 9     android:minHeight="?attr/actionBarSize"
10     app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
11     app:navigationIcon="?attr/homeAsUpIndicator"
12     app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
13    >
14 </android.support.v7.widget.Toolbar>

注:其中app:navigationIcon="?attr/homeAsUpIndicator"用於設置返回圖標

三、在布局文件中引入自定義的Toolbar:

<include
    layout="@layout/common_toolbar">
</include>

四、activity中聲明Toolbar以及對menu的事件監聽:

注:Activity必須繼承AppCompatActivity

1、聲明Toolbar:

1 Toolbar toolbar = (Toolbar) findViewById(R.id.common_toolbar_top);
2 setSupportActionBar(toolbar);

2、Toolbar設置標題等:

setTitle(R.string.fragment_for_why_title);

3、對menu進行聲明和事件監聽:

menu聲明:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

事件監聽:

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    int id = item.getItemId();

    //noinspection SimplifiableIfStatement
    if (id == R.id.action_search) {
      
        return true;
    }

    return super.onOptionsItemSelected(item);
}

五、最終效果圖:

Toolbar自定義                      Toolbar自定義

Demo下載地址:http://shouji.baidu.com/software/item?docid=8118536&from=as

 

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