значок элемента действия не отображается

#android

#Android

Вопрос:

Вот XML-файл меню.

 <menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    tools:context=".MainActivity">

    <item android:id="@ id/action_create_order"
         android:title="@string/action_create_order"
         android:icon="@mipmap/ic_shopping_cart_black_36dp"
         android:orderInCategory="1"
         app:showAsAction="ifRoom" />

    <item android:id="@ id/action_share"
         android:title="@string/action_share"
         android:orderInCategory="2"
         app:showAsAction="ifRoom"
         android:actionProviderClass="android.widget.ShareActionProvider" />

    <item android:id="@ id/action_settings"
         android:title="@string/action_settings"
         android:orderInCategory="100"
         app:showAsAction="never" />
</menu>
 

Вот мой onCreateOptionsMenu(Menu menu) метод

    @Override
        public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main_menu, menu);
        MenuItem menuItem = menu.findItem(R.id.action_share);
        shareActionProvider = (ShareActionProvider) menuItem.getActionProvider();
        setIntent("This is example text");
        return super.onCreateOptionsMenu(menu);
    }
 

Я уже использую xmlns:app="http://schemas.android.com/apk/res-auto" и app:showAsAction , но по какой-то причине значок по-прежнему не отображается.

У моего проекта есть appcompat.v7 зависимость. кто-нибудь может мне помочь, пожалуйста?

Комментарии:

1. вы создали метод OnOptionCreate() в Activity??

2. вы установили setHasOptionMenu(true) в своем OnCreate() методе?

3. @sushildlh да, я создал метод, но он по-прежнему не работает

4. @Jibbo нет, я просто пытался добавить его, но метод не распознается

5. вы установили панель инструментов, чтобы получить панель действий?

Ответ №1:

Вы можете динамически добавлять кнопки и т. Д. на панель действий по умолчанию. в onCreateOptionsMenu добавьте следующий код, чтобы добавить элемент.

 MenuItem aBarItem= menu.add(0,1,0,"Save");
    aBarItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
aBarItem.setIcon(//Drawable icon//);
 

затем просто добавьте onclicklistener к этому пункту меню, чтобы он заработал.
Я надеюсь, что это помогло

Комментарии:

1. на самом деле я предпочитаю делать это в xml, хотя я попробую это в крайнем случае, спасибо