Material Design之ToolBar
阿新 • • 發佈:2018-12-22
ToolBar可以定製修改的地方有:
- 設定導航欄圖示
- 設定App的logo
- 支援設定標題和子標題
- 支援新增一個或者多個的自定義控制元件
- 支援Action Menu
佈局檔案:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/background_color" android:orientation="vertical"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar_tl" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@drawable/bg_blue"> <!--自定義控制元件--> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="自定義控制元件" android:textColor="@android:color/white"android:textSize="@dimen/middle" /> </android.support.v7.widget.Toolbar> </LinearLayout>
Action Menu 佈局
<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <item android:id="@+id/up" android:icon="@mipmap/up" android:title="提交" app:showAsAction="ifRoom" /> <item android:id="@+id/share" android:icon="@mipmap/wd_icon_fx" android:title="分享" app:showAsAction="ifRoom" /> </menu>
然後在java程式碼中獲取ToolBar,設定相應的值。如下:
toolbar_tl= (Toolbar) findViewById(R.id.toolbar_tl); toolbar_tl.setNavigationIcon(R.mipmap.lst_sy_ptsk); //設定導航欄圖示 toolbar_tl.setLogo(R.mipmap.ic_launcher);//設定logo toolbar_tl.setTitle("Title");//設定標題 toolbar_tl.setSubtitle("subtitle");//設定子標題 toolbar_tl.inflateMenu(R.menu.boolbar_menu); //設定右上角填充選單 //設定選單點選事件 toolbar_tl.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() { @Override public boolean onMenuItemClick(MenuItem item) { switch (item.getItemId()){ case R.id.up: Toast.makeText(mContext,"您點選了up",Toast.LENGTH_SHORT).show(); break; case R.id.share: Toast.makeText(mContext,"您點選了share",Toast.LENGTH_SHORT).show(); break; } return false; } });