2014-02-11 2 views
0
@Override 
    protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    notify("onCreate"); 
    } 

    @Override 
    protected void onPause() { 
    super.onPause(); 
    notify("onPause"); 
    } 

    @Override 
    protected void onResume() { 
    super.onResume(); 
    notify("onResume"); 
    } 

    @Override 
    protected void onStop() { 
    super.onStop(); 
    notify("onStop"); 
    } 

    @Override 
    protected void onDestroy() { 
    super.onDestroy(); 
    notify("onDestroy"); 
    } 

    @Override 
    protected void onRestoreInstanceState(Bundle savedInstanceState) { 
    super.onRestoreInstanceState(savedInstanceState); 
    notify("onRestoreInstanceState"); 
    } 

    @Override 
    protected void onSaveInstanceState(Bundle outState) { 
    super.onSaveInstanceState(outState); 
    notify("onSaveInstanceState"); 
    } 

Я, если правильно, это методы обработки жизненного цикла деятельности. Мой вопрос: вам нужно поместить эти методы в каждый класс, если вы хотите правильно управлять жизненным циклом приложения или просто в основном классе?Необходимо использовать методы @Overrides для жизненного цикла Android в каждом классе или только в основном классе

+0

Это зависит от ваших потребностей. Возможно, вам не придется включать все эти методы в ваш основной класс. – Kunu

+0

Это жизненный цикл активности, а не жизненный цикл Android. Таким образом, вы должны обрабатывать его в каждой Деятельности в соответствии с вашими потребностями. – Sharj

ответ

2

Должно быть выполнено один раз за деятельность. Код одного действия не будет использоваться в другом, если только второй не является подклассом первого.

В качестве дополнительного примечания, только onCreateдолжно быть выполнено, остальные не являются обязательными.

0

Вам нужно только переопределить методы, которые вы хотите использовать.

Если вам не нужно выполнять какие-либо специальные функции в onDestroy(), например, вам не нужно переопределять его в любой из ваших Деяний.

Хороший способ определить, нужно ли вам это, чтобы посмотреть, что у вас есть в этих методах. Если все, что вы делаете, вызывает super, тогда вам не нужно включать этот метод в свою активность, потому что поведение по умолчанию будет очень хорошо для вас.

0

Если вы хотите, чтобы ваше приложение разработало определенное поведение, которое может быть применено к определенной части жизненного цикла, вы должны поместить эти методы в каждый класс Activity. Из-за наследования, которое имеет класс, если вы хотите какое-то конкретное поведение во всем приложении, я рекомендую вам использовать класс Application, который изменяет все последующие действия, единственная проблема заключается в том, что доступны не все обычные методы жизненного цикла деятельности.

Вот некоторые ссылки о жизненном цикле в классе Application:

https://www.inkling.com/read/programming-android-mednieks-1st/chapter-11/life-cycle-methods-of-the

Лучший пример этого метода вы всегда должны переопределить это OnCreate(), так как именно здесь вы добавляете все нормальные Запускают поведение взглядов и логики в вашей деятельности.

Если вы не очень хорошо знакомы с жизненным циклом Android, я не рекомендую вам переопределять эти методы, потому что они могут привести вас к странному поведению в вашем приложении, то есть для моего личного опыта.

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