2013-09-29 70 views
0

我想在Android支持庫的操作欄中添加按鈕。 顯示了操作欄,但沒有出現按鈕。我無法在操作欄中添加按鈕

下面是RES /菜單/ main.xml中

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

<item 
    android:id="@+id/action_settings" 
    android:orderInCategory="100" 
    android:showAsAction="always" 
    android:icon="@android:drawable/ic_menu_preferences" 
    android:title="@string/action_settings"/> 

</menu> 

,我添加以下代碼。

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    MenuInflater inflater=getMenuInflater(); 
    inflater.inflate(R.menu.main, menu); 

    return true; 
} 

我該怎麼辦?

+0

這是一個活動,或者一個片段裏面?對於後者,你需要調用setHasOptionsMenu(true)來使其工作。 – ivagarz

+0

活動內部。 – tuna

回答

0

裏面一個片段:

@Override 
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) 
{ 
    inflater.inflate(R.menu.main, menu); 

    super.onCreateOptionsMenu(menu, inflater); 
} 

還有,記得設置setHasOptionsMenu(true);onActivityCreated方法。

在一個活動:

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

    return super.onCreateOptionsMenu(menu); 
} 
+0

謝謝你的回答,但eclipse說「onCreateOptionsMenu必須覆蓋或實現超類型方法」。 – tuna

1

試試這個:

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

是的,他需要膨脹菜單xml – Sandeep

+0

我試過這個,但沒有任何改變:( – tuna