1

Я реализовал onRetainNonConfigurationInstance() в одном из моих действий, чтобы обрабатывать ориентацию экрана Android. Вот код:Android: onRetainNonConfigurationInstance не вызывается при изменении ориентации экрана

@Override 
    public Object onRetainNonConfigurationInstance() { 
    Log.d("[DEBUG]", "onRetainNonConfigurationInstance : " 
     + this.getClass().getName()); 
    MyState state = new MyState(); 

    return state; 
    } 

Затем я установил приложение на Android-устройство. Вот конфигурация:

Device : Samsung Nexus S 
Android version : 4.0.4 
Kernel version : 3.0.8-g6656123a[email protected] #1 

Когда я отлаживать приложения на телефоне путем изменения ориентации экрана, мой onRetainNonConfigurationInstance() метод не вызывается.

Даже странно, я добавил строку журнала в методе onCreate() моей деятельности. Согласно документации, Android, как предполагается, будет воссоздавать активность, когда происходит ориентация экрана. Так что у меня есть что-то вроде следующего:

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.mylist); 
    Log.d(Constants.LOG_TAG, "Oncreate : " + this.getClass().getName()); 
} 

Но и тут OnCreate() метод не называется при изменении ориентации экрана на устройстве.

У вас уже возникла проблема с парнем?

В документации также говорится, что этот метод устарел, и вместо этого я должен использовать что-то, связанное с фрагментами и т. Д. Может ли это быть причиной, почему у меня нет метода?

на самом деле, я реализации для 2.3.3 до 3,0 устройств, но мой Тестовое устройство 4.0.4: Может ли это быть проблема? Я думал, что есть какая-то обратная совместимость между версиями ОС Android.

заранее спасибо,

+0

Просьба поделиться файлом манифеста. – AndroDev

ответ

2

Вы, наверное, есть android:configChanges заявил для orientation в вашем файле манифеста для деятельности, которая says, что вы будете обрабатывать ориентацию изменить себя, поэтому метод onCreate не вызывается.

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

  • Нет связанных вопросов^_^