1. 簡要
建立的Menu資源放置:app/src/main/res/menu
Menu的showAsAction屬性:可以控制Menu顯示的樣式
2. Menu的showAsAction屬性介紹
showAsAction模式方為下列幾種:
- ifRoom
- always
- withText
- collapseActionView
- never
ifRoom:根據屏幕自行去適應,應顯示的Icon數量,多餘的會隱藏在…裡面
always:不管屏幕寬,直接顯示在應用欄位上面,不隱藏
withText:一般會搭配ifRoom,app:showAsAction="withText|ifRoom"
由系統判定,能否icon與title一起顯示,部分手機在直向時,只會顯示icon,橫向才會顯示icon+title
collapseActionView:由 android:actionLayout 或 android:actionViewClass搭配時使用,可收起來
never:不管屏幕寬,直接隱藏在…裡面
這裡舉例一個collapseActionView的用法
新增以下menu,未使用collapseActionView
<?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/backButton" android:title="test1"/> <item android:id="@+id/searchButton" app:actionViewClass="android.widget.SearchView" android:icon="@drawable/ic_baseline_search_24" android:title="search" app:showAsAction="ifRoom" /> <item android:id="@+id/backButton2" android:icon="@drawable/ic_baseline_fast_forward_24" android:title="test2"/> <item android:id="@+id/backButton3" android:title="test3" android:icon="@drawable/ic_baseline_create_24" app:showAsAction="withText|ifRoom"/> <item android:id="@+id/backButton4" android:title="test4"/> <item android:id="@+id/backButton5" android:icon="@drawable/ic_baseline_home_24" android:title="test5"/> </menu>

新增以下menu,使用collapseActionView
<?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/backButton"
android:title="test1"/>
<item android:id="@+id/backButton1"
app:actionViewClass="android.widget.SearchView"
android:icon="@drawable/ic_baseline_search_24"
android:title="search"
app:showAsAction="ifRoom|collapseActionView" />
<item android:id="@+id/backButton2"
android:icon="@drawable/ic_baseline_fast_forward_24"
android:title="test2"/>
<item android:id="@+id/backButton3"
android:title="test3"
android:icon="@drawable/ic_baseline_create_24"
app:showAsAction="withText|ifRoom"/>
<item android:id="@+id/backButton4"
android:title="test4"/>
<item android:id="@+id/backButton5"
android:icon="@drawable/ic_baseline_home_24"
android:title="test5"/>
</menu>

相關文章
Android ActionBar與Toolbar | Android Activity、Fragment應用欄(AppBar)使用 |
簡要 1. 如何將預設ActionBar關閉,改用Toolbar呢? 2. Toolbar Title如何置中呢? 3. 為Toolbar設定Menu | 簡要 1. Activity擁有應用欄 2. Fragment擁有應用欄 3. 動態修改Menu是否顯示 4. Menu點擊事件處理 |
訂閱Codeilin的旅程,若有最新消息會通知。
廣告