2012-11-23 82 views
0

應用程序必須在2.3和4.0上運行。 活動中有選項菜單。 在2.3 - 設備上的所有確定的當前菜單按鈕。 在4.0 - 沒有菜單按鈕,沒有辦法顯示選項菜單。 清單中菜單按鈕2.3和4.0

android:minSdkVersion="8" 
android:targetSdkVersion="15" /> 

活動

public boolean onCreateOptionsMenu(Menu menu) { 
    getMenuInflater().inflate(R.menu.activity_auth, menu); 
    return true; 
} 

問: 對2.3和4.0,並使用選項菜單運行如何寫申請?

回答

0

使應用程序與舊版本兼容是巨大的痛苦。我建議你使用一個圖書館。這該死的傑克沃頓寫的名爲ActionBarSherlock。您可以在這裏多在link

發現我自己在兩個應用程序中使用到現在。它允許你在2.2的舊版本中使用ActionBar(在3.0中引入)。它擴展了android support-library圖書館提供了一些主題,如果設置你的應用程序在外觀和感覺方面簡單轉換爲4.0。

0

降低你targetSdk到10(或更低),以傳統的菜單按鈕出現。

我強烈建議你閱讀這篇文章Say Goodbye to menu button到後面已瞭解所有的邏輯...

+1

我不認爲targetSdk 10是最好的解決方案。如果有任何事情會毀了這個經歷。改爲在屏幕上顯示傻瓜按鈕。 – Doomsknight

+1

我在告訴OP他需要做什麼,如果他希望恢復舊行爲而不修改他的代碼,如果他想要這樣做的話。我認爲這是毫無意義的討論 - 這取決於OP。 –

3

如何編寫應用程序對2.3和4.0上運行,並使用選項菜單?

再說你已經做了,你需要有API等級11+的行動吧,這將有三個點啓示,以顯示溢出菜單(在您所有的選項菜單項會去你還沒有進入行動欄本身)。根據您現有的android:targetSdkVersion =「15」,您應該有一個默認的操作欄。

對於具有關屏菜單按鈕,不過,你不會看到在動作條三點啓示設備。相反,用戶需要按MENU按鈕才能顯示菜單,就像在Android 2.3上一樣。