RoboGuice и ActionbarSherlock, кажется, не работают вместе

Вот в чем дело:

Я использую roboguice-sherlock для работы как с ActionBarSherlock, так и с RoboGuice, и хочу использовать функцию @ContentView() RoboGuice для внедрения макета, а также хочу requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS) в onCreate() показывать неопределенный индикатор выполнения.

После этого было поймано исключение времени выполнения:

java.lang.RuntimeException: невозможно запустить активность ComponentInfo{...}: android.util.AndroidRuntimeException: перед добавлением контента необходимо вызвать requestFeature()

Это баг или я просто неправильно делаю?

Например, если в sample-roboguice примеров actionbarsherlock requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS) добавляется в метод onCreate() чуть ниже super.onCreate(savedInstanceState), образец аварийно завершает работу во время выполнения с указанными выше исключениями.


person Jack Gao    schedule 08.05.2012    source источник
comment
Можете ли вы добавить больше кода, чтобы мы могли понять это !! :)   -  person Raj Shah    schedule 08.05.2012
comment
Просто добавьте одну строку, пример кода вылетит во время выполнения.   -  person Jack Gao    schedule 08.05.2012


Ответы (1)


Просто вызовите requestWindowFeature() перед super.onCreate(). Это должно решить вашу проблему.

@Override
protected void onCreate(Bundle savedInstanceState) {
    requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
    super.onCreate(savedInstanceState);
    // do some epic things
}
person Thomas Auinger    schedule 04.06.2012
comment
Да, я думаю, что это трюк сейчас. Но не факт, что это окончательное решение. - person Jack Gao; 04.06.2012
comment
На самом деле, requestWindowFeature() следует вызывать до того, как будут отображены какие-либо представления. - person Tash Pemhiwa; 24.06.2014