ボタンをクリックすると、言語のリストを含むメニューが表示されます。メニューのすべての項目のタイトルの右側にアイコンを表示したいと思います。私はグーグルで検索しましたが、適切な解決策が見つかりませんでした。助けてください。
menu_language.xml:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/nav_arabic"
android:title="Arabic" />
<item
android:id="@+id/nav_southAfrica"
android:icon="@drawable/ic_earphones"
android:title="Afrikaans"
/>
<item
android:id="@+id/nav_albania"
android:icon="@drawable/ic_earphones"
android:title="Albanian " />
<item
android:id="@+id/nav_armenian"
android:title="Armenian" />
<item
android:id="@+id/nav_azerbaijani"
android:icon="@drawable/ic_earphones"
android:title="Azerbaijani" />
<item
android:id="@+id/nav_bangla"
android:icon="@drawable/ic_earphones"
android:title="Bangla" />
<item
android:id="@+id/nav_basque"
android:icon="@drawable/ic_earphones"
android:title="Basque" />
<item
android:id="@+id/nav_belarusian"
android:title="Belarusian" />
言語.java:
public void showMenu(View v) {
PopupMenu popup = new PopupMenu(getActivity(), v);
Object menuHelper;
Class[] argTypes;
try {
Field fMenuHelper = PopupMenu.class.getDeclaredField("mPopup");
fMenuHelper.setAccessible(true);
menuHelper = fMenuHelper.get(popup);
argTypes = new Class[]{boolean.class};
menuHelper.getClass().getDeclaredMethod("setForceShowIcon", argTypes).invoke(menuHelper, true);
} catch (Exception e) {
}
MenuInflater inflater = popup.getMenuInflater();
inflater.inflate(R.menu.menu_language, popup.getMenu());
popup.setOnMenuItemClickListener(this);
現在、アイコンはメニューの左側にありますが、タイトルの右側に配置したいです。助けてください、手がかりはありますか?