2013-10-12 5 views
1

Я использую виджет поиска ABS для моей операции поиска, и у меня возникла проблема с тем, что onMenuItemActionCollapse не вызывается при изменении ориентации при нажатии кнопки прокрутки поискового виджета. Я осуществляю свой код, ниже которого я в настоящее время с помощью ...onMenuItemActionCollapse не вызывается в изменении ориентации

item.setOnActionExpandListener(new OnActionExpandListener() { 

       @Override 
      public boolean onMenuItemActionExpand(MenuItem item) { 
       // TODO Auto-generated method stub 
       Log.e("collapse", "Expand Called"); 
            return true; 
          } 
          @Override 
      public boolean onMenuItemActionCollapse(MenuItem item) { 
       // TODO Auto-generated method stub 

       Log.e("collapse", "collapse Called"); 
            return true; 
          } 

По щелчку поискового элемента из панели действий Пункта Expand вызываются и нажатие кнопки Готово/жесткий задний кнопка Пункт Collapse называется. Но неожиданное поведение возникает, когда вызывается элемент expand, а при смене ориентации объект перестает коллапс.

Просьба сообщить мне причину этой проблемы.

Благодаря Venkat

ответ

0

Вы можете быть импорт

import android.widget.SearchView; 

Изменить это нравится ниже,

import com.actionbarsherlock.widget.SearchView; 
+0

Я уже использую панель действий Шерлок виджет только – Venkatraman

0

В этом случае, вы можете настроить экран изменения ориентации множеством android:configChanges="orientation|screenSize" к деятельности в AndroidManifest.xml, , то активность не будет воссоздана, а активность onConfigurationChanged, в этом методе вы можете сделать что-то для краха, так как вы знаете, кто там израсходован.

+0

Изменения конфигурации не является приемлемым для деятельности, имеющие несколько макетов .. любой другой Possiblity – Venkatraman

+0

@Venkatraman Тогда я предлагаю вам использовать «onSaveInstanceState», который был вызван, прежде чем ваша прежняя деятельность разрушена, , вы знаете, кто был израсходован, и его «onMenuItemActionCollapse» следует вызвать, пометить состояние флагами, затем в «onDestory» вы можете проверить флаги и выполнить работу, которую хотите сделать, с помощью «onMenuItemActionCollapse». Ссылка: http://developer.android.com/reference/android/app/Activity.html#onSaveInstanceState(android.os.Bundle). Это будет работать, но я должен сказать, что это не идеальный ответ, с нетерпением ожидая отличного ответа другого человека. – ieatbyte

+0

Так как я новичок в этой концепции фрагментов, вы можете дать мне несколько примеров – Venkatraman

Смежные вопросы