2012-05-03 3 views
0

У меня есть приложение для обмена фотографиями, в котором отображается нижнее меню во всех макетах. Я создаю один, но отображается, когда я нажимаю клавишу меню. Я хочу меню, которое отображается при запуске любой активности , так как я могу создать общий меню для всех макета, и нет необходимости нажимать клавишу меню для отображения нижней панели меню андроид благодаряобщее меню для всех макетов android

menu.xml 
<?xml version="1.0" encoding="utf-8"?> 

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

<item android:id="@+id/menu_bookmark" 
     android:icon="@drawable/icon_bookmark" 
     android:title="Bookmark" /> 

<item android:id="@+id/menu_share" 
     android:icon="@drawable/icon_share" 
     android:title="Share" /> 

<item android:id="@+id/menu_delete" 
     android:icon="@drawable/icon_delete" 
     android:title="Delete" /> 


</menu> 

activity.java 

@Override 
public boolean onCreateOptionsMenu(Menu menu) 
{ 
    MenuInflater menuInflater = getMenuInflater(); 
    menuInflater.inflate(R.layout.menu, menu); 
    return true; 
} 
+0

FYI, если вы хотите использовать 'include' и' merge' с фактическим меню, вам нужно вместо этого раздуть XML-файлы с несколькими меню, как описано здесь: http://stackoverflow.com/ вопросы/4337034/включать-меню-в-меню-андроид –

ответ

0

Вместо создания меню вы должны сделать общих пользовательский XML макета для меню и включить его с всеми вашими файл xml файла. Для этого вы можете использовать <merge> и <include> тег для Android XML Layout.

Посмотрите на Layout Tricks: Merging Layouts

Layout Tricks: Creating Reusable UI Components

Update:

Теперь на ваш вопрос, чтобы открыть меню, не нажимая кнопку меню, вы можете поместить эту строку в ваш onCreate() деятельности.

openOptionsMenu(); 

И закрыть:

closeOptionsMenu(); 

Эти оба метода класса активность, поэтому если вы используете его сторону деятельности затем использовать контекст деятельности и с помощью этого метода.

Смежные вопросы