/ / NoSuchMethodError при обаждане на MenuItem.collapseActionView - android, android-actionbar, android-support-библиотека, searchview, android-actionbar-compat

NoSuchMethodError на повикване MenuItem.collapseActionView - android, android-actionbar, android-support-библиотека, searchview, android-actionbar-compat

Използвайки библиотеката за поддръжка на Android, която изпълних лента за действия (Android.support.v7.app.ActionBar). Междувременно се опитвах да си взаимодействам SearchView и се опита да се срине SearchItem използвайки по-долу метод:

 searchItem.collapseActionView();

seachItem е от тип MenuItem. Това доведе до по-малко изключение:

java.lang.NoSuchMethodError: android.view.MenuItem.collapseActionView

И така, как трябва да срина SearchItem?

Отговори:

22 за отговор № 1

Вместо да използвате:

searchItem.collapseActionView();

Трябва да използвам статичен метод android.support.v4.view.MenuItemCompat:

MenuItemCompat.collapseActionView(searchItem);

Изглежда очевидно в момента, но отне няколко часа, за да се чудя, че наличните кодове в сайтовете, които обикновено се опитват да работят (Android.app.ActionBar) библиотека (API 11 и по-висока), която не е в Support Library V7 (Android.support.v7.app.ActionBar) който има свои собствени методи, които са различни в някои случаи като този.