1. 程式人生 > >android-基礎編程-ToolBar

android-基礎編程-ToolBar

item nco image 1-1 win 顯示 ria avi refresh

Android 3.0 Android 推了 ActionBar 這個控件,而到了2013 年 (4.0)Google 開始大力地推動所謂的 android style,material design .

toolbar actionbar 區別在toolbar可以改變任意位置。

toolbar布局:

技術分享

setNavigationIcon

即設定 up button 的圖標,因為 Material 的介面,在 Toolbar這裏的 up button樣式也就有別於過去的 ActionBar 哦。

setLogo
APP 的圖標。

setTitle
主標題。

setSubtitle

副標題。

setOnMenuItemClickListener
設定菜單各按鈕的動作。

1.新建一個toolbar的引用。

<android.support.v7.widget.Toolbar
    android:layout_width="match_parent"
    android:layout_height="50dp"
    android:layout_alignParentBottom="true"
    android:layout_marginBottom="10dp"
    android:id="@+id/toolbar"
    android:theme
="@style/zcx" android:background="@color/colorAccent"> </android.support.v7.widget.Toolbar>

2.代碼中引用toolbar

requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.toolbar);
Toolbar toolbar = (Toolbar)findViewById(R.id.toolbar);

其中設置了去掉window title,以顯示toolbar。其類似actionbar.

3.設置menu及點擊事件

toolbar.inflateMenu(R.menu.main);//設置右上角的填充菜單
        //點擊事件
        toolbar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
            @Override
            public boolean onMenuItemClick(MenuItem item) {

                switch (item.getItemId()){
                    case R.id.action_settings:
                        //........
                    case R.id.action_refresh:
                        //........
                }
                Toast.makeText(getApplicationContext(),"zcx",Toast.LENGTH_SHORT).show();

                return true;
            }
        });

4.設置主題風格

<style name="zcx" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="actionOverflowButtonStyle">@style/ActionButton.Overflow.ZhiHu</item>
    </style>

    <style name="ActionButton.Overflow.ZhiHu" parent="android:style/Widget.Holo.Light.ActionButton.Overflow">
        <item name="android:src">@drawable/icon</item>
    </style>

定義toolbar 主題繼承之Theme.AppCompat.Light.NoActionBar,並改變了OverFlow的背景圖片。

5.效果(toolbar位置讓我移動底部)

技術分享






android-基礎編程-ToolBar