Добавление панели действий и меню параметров в действие - PullRequest
0 голосов
/ 08 июня 2018

Я использую этот образец для моего приложения.Этот образец не имеет панели действий.

Это макет действия, в котором я хочу добавить панель действий с меню параметров:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">



    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:id="@+id/container"
        android:layout_width="match_parent"
        android:layout_height="500dp"
        android:layout_gravity="bottom"
        android:background="#000"
        tools:context="com.example.android.camera2basic.CameraActivity" />

</LinearLayout>

Итак, LinearLayout и FrameLayout внутри него как контейнердля фрагмента.В Main Activity я реализовал onCreateOptionsMenu и добавил setSupportActionBar((Toolbar)findViewById(R.id.my_toolbar));, но панель действий с меню не появляется.

Как добавить к этому занятию ActionBar с меню?

Ответы [ 2 ]

0 голосов
/ 07 февраля 2019

Установите для своей темы деятельности значение NoActionBar и добавьте эти 2 строки кода в метод Activity onCreate.

Добавьте панель инструментов в свой макет.

ToolBar toolbar = findViewById ();
setSupportActionBar(toolbar);
0 голосов
/ 08 июня 2018

Создайте main_menu.xml в папке вашего меню

<item
    android:id="@+id/menu1"
    android:title="Option 1" />
<item
    android:id="@+id/menu2"
    android:title="Optiion 2" />

Добавьте это в свою деятельность

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.main_menu, menu);
    return super.onCreateOptionsMenu(menu);
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()){
        case R.id.menu1:
            Toast.makeText(this, "Clicked Menu 1", Toast.LENGTH_SHORT).show();
            break;
        case R.id.menu2:
            Toast.makeText(this, "Clicked Menu 2", Toast.LENGTH_SHORT).show();
            break;
        default:
            break;
    }
    return super.onOptionsItemSelected(item);
}
...