Próbuję dodać „przycisk” do menu w moim kodzie, ale przycisk nie działa, myślę, że robię coś nie tak, popraw mnie.

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">

    <group android:checkableBehavior="single">


        <item
            android:id="@+id/activity_main"
            android:icon="@drawable/ic_home"  />
        <item
            android:icon="@drawable/ic_near"  />
        <item
            android:icon="@drawable/ic_setting"  />
        <Button 
            android:icon="@drawable/ic_money"
            android:id="@+id/btn_remove_ads" />
        <item
            android:id="@+id/nav_review"
            android:icon="@drawable/ic_action_name"  />
        <item
            android:id="@+id/nav_share"
            android:icon="@mipmap/ic_share"  />
        <item
            android:id="@+id/nav_email"
            android:icon="@drawable/ic_action_email"  />
    </group>

</menu>
-3
Nob 20 listopad 2019, 21:34
Użyj właściwości app:actionViewClass i ustaw ją na Button
 – 
Sachin Bahukhandi
20 listopad 2019, 21:49

2 odpowiedzi

Musisz ustawić szerokość i wysokość. Przycisk powinien być podkreślony na czerwono w Android Studio i zwykle informuje, co się stało, gdy klikniesz czerwoną żarówkę.

 <Button
        android:id="@+id/whatever"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"/>
0
Spinshot 20 listopad 2019, 21:49

Nie możesz dodać przycisku w menu.xml, musisz dodać element i zmienić jego ikonę, a także obsłużyć metodę click onOptionsItemSelected.

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle item selection
    switch (item.getItemId()) {
    case R.id.nav_1:
        TODO()
        return true;
    case R.id.nav_2:
        showHelp();
        return true;
    default:
        return super.onOptionsItemSelected(item);
    }
}

Zobacz więcej - menu systemu Android

0
Bäda 20 listopad 2019, 21:55