Java.lang.UnsupportedOperationException: Esto no es compatible, use MenuItemCompat.setOnActionExpandListener ()

Recientemente he migrado de Eclipse a Android Studio y al hacerlo he cogido el siguiente error

java.lang.UnsupportedOperationException: This is not supported, use MenuItemCompat.setOnActionExpandListener() at android.support.v7.internal.view.menu.MenuItemImpl.setOnActionExpandListener(MenuItemImpl.java:740) at biz.nickbullcomputing.bevnav.MainActivity.onCreateOptionsMenu(MainActivity.java:699) at android.app.Activity.onCreatePanelMenu(Activity.java:2851) at android.support.v4.app.FragmentActivity.onCreatePanelMenu(FragmentActivity.java:277) at android.support.v7.internal.view.WindowCallbackWrapper.onCreatePanelMenu(WindowCallbackWrapper.java:84) at android.support.v7.app.AppCompatDelegateImplBase$AppCompatWindowCallbackBase.onCreatePanelMenu(AppCompatDelegateImplBase.java:273) at android.support.v7.app.AppCompatDelegateImplV7.preparePanel(AppCompatDelegateImplV7.java:1111) at android.support.v7.app.AppCompatDelegateImplV7.doInvalidatePanelMenu(AppCompatDelegateImplV7.java:1396) at android.support.v7.app.AppCompatDelegateImplV7.access$100(AppCompatDelegateImplV7.java:89) at android.support.v7.app.AppCompatDelegateImplV7$1.run(AppCompatDelegateImplV7.java:126) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:155) at android.app.ActivityThread.main(ActivityThread.java:5725) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1030) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:825) 

Este error parece convertirse en el siguiente fragmento de código de mi actividad principal

  searchItem = menu.findItem(R.id.action_search); searchItem.setOnActionExpandListener(new OnActionExpandListener() { @Override public boolean onMenuItemActionCollapse(MenuItem item) { townList.setVisibility(View.INVISIBLE); return true; // Return true to collapse action view } @Override public boolean onMenuItemActionExpand(MenuItem item) { townList.setVisibility(View.VISIBLE); return true; // Return true to expand action view } }); 

El código xml de la búsqueda:

 <item android:id="@+id/action_search" android:icon="@drawable/ic_action_search" android:title="@string/action_search" app:showAsAction="ifRoom|collapseActionView" app:actionViewClass="android.support.v7.widget.SearchView"/> 

Mis dependencias del archivo build.gradle

 dependencies { compile 'com.android.support:support-v4:22.2.1' compile 'com.android.support:appcompat-v7:22.0.0' compile 'com.google.android.gms:play-services:+' 

}

Ahora tenga en cuenta antes de la migración esto funcionaba perfectamente y ahora no lo es. No estoy completamente seguro de cómo ha sucedido esto. ¿Algunas ideas?

One Solution collect form web for “Java.lang.UnsupportedOperationException: Esto no es compatible, use MenuItemCompat.setOnActionExpandListener ()”

La fijación gracias al comentario de ρяσѕρєя K. Muy apreciado mate, gracias !!

 MenuItemCompat.setOnActionExpandListener(searchItem, new MenuItemCompat.OnActionExpandListener() { @Override public boolean onMenuItemActionExpand(MenuItem menuItem) { // Return true to allow the action view to expand townList.setVisibility(View.VISIBLE); return true; } @Override public boolean onMenuItemActionCollapse(MenuItem menuItem) { // When the action view is collapsed, reset the query townList.setVisibility(View.INVISIBLE); // Return true to allow the action view to collapse return true; } }); 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.