2016-02-06 9 views
1

В Android, когда вы onLongClick значок элемента переполнения, появится всплывающая подсказка его названия.Android: Как удалить подсказку значка меню переполнения?

Я пробовал задавать название меню пустым, но появляется всплывающая подсказка.

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

    <item android:id="@+id/action_icon" 
     android:title="Icon Title" 
     android:icon="@drawable/ic_myicon" 
     app:showAsAction="always"/> 
</menu> 

Примечание:

• Я использую приложение имена, потому что Android Studio говорит мне, чтобы использовать его из-за наличие Theme.AppCompat.Light.NoActionBar в моей теме. Я пробовал пространство имен android. Не работает.

• Мое меню создано в Fragment с hasOptionsMenu(true).

• My ActionBar - это Toolbar.

Как удалить эту всплывающую подсказку, если это возможно? Благодаря!

+0

Опубликовать код. –

+2

удалить атрибут title из объекта для этого –

+0

Опубликовано код. – mco

ответ

0

единственный способ сделать это до это с андроид: showAsAction = "withText" и установить название как = ""

Для onLongClickListener:

final MenuItem menuItem = menu.findItem(R.id.action_search); 
      searchView = (SearchView) MenuItemCompat.getActionView(menuItem); 
      searchView.setOnLongClickListener(new View.OnLongClickListener() { 
       @Override 
       public boolean onLongClick(View v) { 
        return false; 
       } 
      }); 
+0

Извините, но это не работает. 'android: showAsAction =" withText "' заставит мой пункт меню отображаться только как текстовый элемент. Вместе с 'android: title =" "' будет отображаться пустой текстовый элемент меню. Я пробовал 'android: showAsAction =" always | withText "', но это тоже не работает. – mco

+0

u может переопределить menuitem onlongclick, а затем ничего не делать, чтобы не показывать подсказку –

+0

'MenuItem' не имеет OnLongClickListener. Вызов 'MenuItem.getActionView()' всегда тоже нул ... – mco

0

Да, это возможно. В классе java удалите public boolean onCreateOptionsMenu (меню) , и задание будет выполнено. Если нет, удалите это также из класса java public boolean onOptionsItemSelected (элемент MenuItem)

+0

Это просто полностью удаляет все мое меню. Технически это удаляет подсказку lol. – mco

+1

Удалить только публичное значение boolean onOptionsItemSelected (только элемент MenuItem). – BlueSlimShady