SearchDialog не может быть показан в ActivityGroup

1

У меня есть два действия внутри ActivityGroup, один "ProvinceActivity" и еще один "CityActivity". поэтому код:

public class CityManagerActivity extends ActivityGroup {
    View v1 = getLocalActivityManager().startActivity(
                "tab1",
                new Intent(this, ProvinceActivity.class)
                        .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP))
                .getDecorView();
    replaceView(v1);
}

но когда у меня есть поиск по умолчанию, нажав клавишу поиска в "tab1", у меня есть ERROR:

08-19 17:18:23.438: ERROR/AndroidRuntime(9078): Uncaught handler: thread main exiting due to uncaught exception 
08-19 17:18:23.458: ERROR/AndroidRuntime(9078): java.lang.IllegalArgumentException: no ident 
08-19 17:18:23.458: ERROR/AndroidRuntime(9078):     at android.app.Activity.ensureSearchManager(Activity.java:3499) 
08-19 17:18:23.458: ERROR/AndroidRuntime(9078):     at android.app.Activity.startSearch(Activity.java:2648) 
08-19 17:18:23.458: ERROR/AndroidRuntime(9078):     at android.app.Activity.onSearchRequested(Activity.java:2612) ...

второй поиск работает, скажите мне, как это сделать, PLZ...

  • 1
    Привет, вы нашли решение для этого
  • 0
    У меня такая же проблема, вы нашли решение?
Показать ещё 1 комментарий
Теги:
activitygroup

2 ответа

0
Лучший ответ

Иметь такую ​​же проблему. Я использую это и исправляю проблему.

@Override
public boolean onSearchRequested() {
    return true;
}
0

Для других, которых я думаю, просто вернув true, приложение показывает поведение, которое пользователь не ожидает, потому что он должен показывать какой-то поиск и, вернув true, это переопределяется.

В статье http://www.app-solut.com/blog/2011/10/unexpected-behavior-when-working-with-nested-tabhosts/ показан хороший способ решения этой проблемы в TabHost без изменения поведения по умолчанию.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню