最近我已經從常規操作欄實現切換到最近發佈的appcompat實現。我的應用程序大量使用操作欄來提供功能。由於切換,在老點 API(小於11)沒有任何菜單項。而較新的API可以,但它們不會像配置的那樣顯示圖像(如果room | withText)。有沒有其他人經歷過這個或想出任何解決方案?是否有可能使用appcompat庫有一個操作欄菜單?
4
A
回答
25
當使用appcompat庫時,我發現了什麼情況。您可以像正常一樣創建菜單。
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
但是,在你的菜單的XML文件,添加的xmlns:應用程序屬性菜單標籤,就像這樣:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" >
然後,在每個菜單項,在那裏你通常會指定的「showAs」風格(ifRoom,withText等),包括此替代線旁邊的一個規律:
app:showAsAction="ifRoom|withText"
android:showAsAction="ifRoom|withText"
在此之後,你的菜單將顯示正確的當前的和舊的API。我從here得到了這個信息。
1
如果設備上有一個物理「菜單」按鈕,它將顯示上下文菜單。如果沒有,菜單項將被添加到ActionBar中。
+1
謝謝,但沒有項目被添加到2.2中的ActionBar? –
相關問題
- 1. 是否有可能只有一個片段的操作欄?
- 2. 使用appcompat操作欄菜單字體顏色更改
- 3. 是否有可能實施切換按鈕在操作菜單中使用操作欄sherlock在android
- 4. 是否有可能有圖標Tkinter的菜單欄在python
- 5. ShareActionProvider沒有菜單或操作欄
- 6. 更改操作欄菜單爲appcompat選擇的文本顏色
- 7. 是否有可能向android上的操作欄添加一個計時器?
- 8. 操作欄菜單
- 9. 有沒有可能有一個透明的操作欄沒有覆蓋視圖與操作欄?
- 10. 是否有可能有一個UIBarButtonItem作爲單元accessoryView?
- 11. 操作欄未與AppCompat一起顯示
- 12. 是否有可能使用java製作操作系統?
- 13. 是否有可能使用「AND」操作符作爲「ConditionalAttribute」?
- 14. 如何使用appcompat庫設置操作欄高度?
- 15. 是否有可能對h:commandLink的action屬性有多個操作?
- 16. 使用選項,而操作欄菜單
- 17. 找出一個窗口是否有菜單欄
- 18. 是否可以使用css製作對角菜單欄?
- 19. 是否有可能從另一個設備上使用.so庫?
- 20. 是否有可能建立一個使用Qt類的BB10庫
- 21. 是否有可能使用單個mysql數據庫有兩個Laravel php網站?
- 22. Android菜單上溢出但不是沒有操作欄
- 23. 檢查是否有可能使用給定的操作
- 24. 是否有可能使用.NET跟蹤文件操作?
- 25. 是否有可能對操作碼stelem.any和ldelem.any使用Reflection.Emit?
- 26. 是否有可能使用Arduino IDE從另一個庫中包含一個庫?
- 27. 是否有可能在一個操作欄上顯示一個圖標和一個微調框
- 28. 是否有可能在Java Swing中製作滑動菜單
- 29. 是否有可能有一個下拉菜單影響返回的值
- 30. 是否有可能在同一活動中有兩個上下文菜單?
@David Wood的回答中,您應該在代碼中添加\t \t setHasOptionsMenu(true)語句,以通知您有一個菜單可用於默認 – ajdeguzman