Saya sedang menulis aplikasi Android menggunakan perpustakaan Xamarin v27.0.2.1. Saya juga memiliki referensi ke Xamarin.Android.Support.V7.AppCompat dan Xamarin.Android.Suport.V4

Saya sedang menguji unit di Android 6.0 dan kemudian menguji pada level yang lebih tinggi. Kode berikut menyebabkan opsi menu di bilah tindakan terlihat dan memiliki opsi menu "pengaturan" standar. Tidak apa-apa di Android v6.0 tetapi pengujian pada v7.0 dan lebih tinggi, ikon menu (tiga titik) tidak muncul. Apa yang saya lewatkan?

Berikut toolbar xml:

<Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:minHeight="?android:attr/actionBarSize"
            android:background="?android:attr/colorPrimary"
            android:titleTextColor="@android:color/white"
            android:minWidth="200px"
            android:id="@+id/toolbar1" 
            android:title="@string/title_bar"
            android:theme="@style/ThemeOverlay.AppCompat.Dark"
            />

Saya menambahkannya ke tata letak menggunakan include:

        <include 
            android:id="@+id/toolbarMain"
            layout="@layout/toolbar"
            android:layout_columnSpan="2"
            android:layout_column="0"
            android:layout_columnWeight="1"/>

Berikut kode untuk mengaktifkannya.

        {
            MenuInflater.Inflate(Resource.Menu.menu_main, menu);
            return base.OnCreateOptionsMenu(menu);
        }

Seperti yang saya sebutkan, ini berfungsi di Android 6.0 tetapi tidak pada versi yang lebih tinggi. Saya pasti kehilangan sesuatu yang sederhana, tetapi saya tidak dapat menemukannya dan belum menemukan artikel tentang ini.

0
MKulka 30 Juni 2020, 19:05

1 menjawab

Jawaban Terbaik

Telapak tangan. Yang harus saya lakukan hanyalah mengganti "toolbar" dengan "android.support.v7.widget.Toolbar."

Dalam xml:

<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:minHeight="?android:attr/actionBarSize"
            android:background="?android:attr/colorPrimary"
            android:titleTextColor="@android:color/white"
            android:minWidth="200px"
            android:id="@+id/toolbar1" 
            android:title="@string/title_bar"
            android:theme="@style/ThemeOverlay.AppCompat.Dark"
            />

Dan dalam kegiatan:

        //public Toolbar tbar = null;
        public Android.Support.V7.Widget.Toolbar tbar = null;
.
.
.
            //tbar = FindViewById<Toolbar>(Resource.Id.toolbarMain);
            //SetActionBar(tbar);
            //ActionBar.SetDisplayShowHomeEnabled(true);
            //ActionBar.SetDisplayHomeAsUpEnabled(true);
            tbar = FindViewById<Android.Support.V7.Widget.Toolbar>(Resource.Id.toolbarMain);
            SetSupportActionBar(tbar);
            SupportActionBar.SetDisplayShowHomeEnabled(true);
            SupportActionBar.SetDisplayHomeAsUpEnabled(true);
0
MKulka 30 Juni 2020, 16:30