2013-11-23 108 views
0

我想用下面的顯示時,按菜單鍵的Android選項菜單佈局

-------------- 
- Logout  - 
-------------- 
- Profile - 
-------------- 
- Password - 
-------------- 
- Add  - 
-------------- 

但對以下設備的結果

---------------------- 
- Logout - Profile - 
---------------------- 
- Password - add - 
---------------------- 

怎麼看都像是在做菜單選項圖片在頂部,下面的源代碼

main.xml中

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

    <item 
     android:id="@+id/action_logout" 
     android:orderInCategory="100" 
     android:showAsAction="withText" 
     android:menuCategory="container" 
     android:title="@string/action_logout"/> 

    <item 
     android:id="@+id/action_password" 
     android:orderInCategory="100" 
     android:showAsAction="withText" 
     android:menuCategory="container" 
     android:title="@string/action_password"/> 

    <item 
     android:id="@+id/action_profile" 
     android:orderInCategory="100" 
     android:showAsAction="withText" 
     android:menuCategory="container" 
     android:title="@string/action_profile"/> 

    <item 
     android:id="@+id/action_sync" 
     android:orderInCategory="100" 
     android:showAsAction="withText" 
     android:menuCategory="container" 
     android:title="@string/action_add"/> 
</menu> 

mainactivity.java

package com.gap.androidgap5; 


import android.os.Bundle; 
import android.util.Log; 
import android.view.KeyEvent; 
import android.view.Menu; 
import android.view.MenuInflater; 
import android.view.MenuItem; 
import android.view.ContextMenu; 
import android.view.ContextMenu.ContextMenuInfo; 
import android.view.View; 

import org.apache.cordova.*; 

public class MainActivity extends DroidGap{ 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     super.init(); 

     super.loadUrl(Config.getStartUrl()); 
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     MenuInflater inflater = getMenuInflater(); 
     inflater.inflate(R.menu.main, menu); 
     return true; 
    } 
} 

THK

回答

0

我知道這篇文章是相當舊的,但我想我應該添加到user2953680的迴應,如果有人遇到這個問題。

我認爲這是很好的區別,幾乎不值得。溢出按鈕確實取代了菜單按鈕,但您可以像訪問菜單按鈕一樣訪問它。

如果您閱讀Android的文檔,他們會說在操作欄中使用圖標來處理與應用程序當前上下文相關的重要操作,而其他所有內容(如幫助項或設置項應放置在溢出菜單中)。所以用戶仍然有一個菜單。

要從菜單

android:showAsAction="never" 

排除行動項目包括在菜單中選擇操作

android:showAsAction="ifRoom" 

http://developer.android.com/guide/topics/ui/actionbar.html

現在,根據不同的Android版本,你會出現菜單與最近Android版本的菜單不同 - 花了我很多時間來弄清楚。無論你是否可以改變他們的佈局,我認爲這是原始問題背後的目的,我都不確定。