2013-09-29 2 views
0

Я хочу добавить кнопки в панели действий в Android Support Library. Отображается панель действий, но кнопка не отображается.Я не могу добавить кнопки в панели действий

Ниже Рез/меню/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

yup, ему нужно раздуть меню xml – Sandeep

+0

Я пробовал это, но ничего не изменилось :( – tuna