2013-09-27 63 views
5

我正在使用v7 appcompat支持庫。 ActionBar中顯示的操作項目可以在較新或較舊的設備上正常顯示。使用appcompat支持庫,溢出不適用於API 7?

不過,我不想API 7.獲取溢出例如:

<menu xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:appcompat="http://schemas.android.com/apk/res-auto" > 

    <item 
     android:id="@+id/menuAction" 
     android:icon="@android:drawable/ic_menu_directions" 
     android:title="@string/barButtonTitle" 
     appcompat:showAsAction="always|withText"/> 
    <item 
     android:id="@+id/menuAction1" 
     android:title="@android:string/untitled" 
     appcompat:showAsAction="never"/> 

</menu> 

appcompat:showAsAction="always|withText"作品,它顯示在動作條的行動項目。但是,appcompat:showAsAction="never"不會像在較新的平臺中那樣顯示在Overflown中。它隱藏在底部,並在按下舊菜單按鈕時顯示。

是從appcompat支持庫的預期行爲?或者我錯過了任何讓Overflow在舊平臺上工作的東西?

+0

注意到同樣的問題,所以我找到了你的問題。你有沒有找到一個解決方案來讓溢出菜單顯示?也許它的目的確實是那些API7設備總是有一個菜單按鈕。 – 3c71

+0

從來沒有得到API 7溢出的工作。雖然它不是我的顯示塞,因爲該項目仍然可以通過舊的菜單按鈕顯示。仍然想知道這是否僅僅是谷歌正在處理的一個錯誤? – Sean

回答

0

溢出不要在舊版本中顯示,據我研究,但你可以在你的清單使用(活動水平內)以下(預ICS):

<activity ...> 
<meta-data android:name="android.support.UI_OPTIONS" 
       android:value="splitActionBarWhenNarrow" /> 
</activity> 

這將顯示在顯示屏底部的動作itens,你必須在你想要這個行爲的所有活動中添加這個動作。對於ICS>,您可以在應用程序級別的清單中添加以下內容,這對所有活動都有效。

<application android:uiOptions="splitActionBarWhenNarrow"> 
</application> 
2

是從程序兼容性支持庫預期的行爲?

是的,這是


如果裝置不具有一個硬件菜單按鈕溢流按鈕(3點)時,才顯示。

每薑餅設備必須有一個菜單按鈕,等API級別7

溢出按鈕不需額外顯示有關此主題的更多信息,下面的博客,帖子可能是有趣: http://android-developers.blogspot.de/2012/01/say-goodbye-to-menu-button.html

+0

歡迎來到StackOverflow並感謝您的回答。但它似乎不完整。 「所以呢?」可能是這個問題:-)。感謝您編輯/完成您的答案。 – lorenz

相關問題