瞭解Android核心元件活動生命週期————旋轉螢幕
(一)編寫程式碼,對一個活動進行輸出。
package com.example.myapplication;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.Toolbar;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import com.google.android.material.snackbar.Snackbar;
public class MainActivity extends AppCompatActivity {
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
System.out.println("===== MainActivity.onCreate");
}
@Override
protected void onRestart() {
super.onRestart();
System.out.println("===== MainActivity.onRestart");
}
@Override
protected void onStart() {
super.onStart();
System.out.println("===== MainActivity.onStart");
}
@Override
protected void onResume() {
super.onResume();
System.out.println("===== MainActivity.onResume");
}
@Override
protected void onPause() {
super.onPause();
System.out.println("===== MainActivity.onPause");
}
@Override
protected void onStop() {
super.onStop();
System.out.println("===== MainActivity.onStop");
}
@Override
protected void onDestroy() {
super.onDestroy();
System.out.println("===== MainActivity.onDestroy");
}
}
(二)設定過濾器(方便檢視)
(三)除錯
1.啟動
建立->啟動->恢復
2.旋轉螢幕
暫停->停止->銷燬->建立->啟動->恢復
3.再次旋轉
暫停->停止->銷燬->建立->啟動->恢復
五、實驗小結(必寫環節)
1.瞭解熟悉了安卓的生命週期,當旋轉時時按步驟銷燬再重新建立
- 具體步驟
1.啟動Activity:系統會先呼叫onCreate方法,然後呼叫onStart方法,最後呼叫onResume,Activity進入執行狀態。
2.當前Activity被其他Activity覆蓋其上或被鎖屏:系統會呼叫onPause方法,暫停當前Activity的執行。
3.當前Activity由被覆蓋狀態回到前臺或解鎖屏:系統會呼叫onResume方法,再次進入執行狀態。
4.當前Activity轉到新的Activity介面或按Home鍵回到主屏,自身退居後臺:系統會先呼叫onPause方法,然後呼叫onStop方法,進入停滯狀態。
5.使用者後退回到此Activity:系統會先呼叫onRestart方法,然後呼叫onStart方法,最後呼叫onResume方法,再次進入執行狀態。
6.當前Activity處於被覆蓋狀態或者後臺不可見狀態,即第2步和第4步,系統記憶體不足,殺死當前Activity,而後使用者退回當前Activity:再次呼叫onCreate方法、onStart方法、onResume方法,進入執行狀態。
7.使用者退出當前Activity:系統先呼叫onPause方法,然後呼叫onStop方法,最後呼叫onDestory方法,結束當前Activity。
相關文章
- Android 禁止螢幕旋轉Android
- Android生命週期元件Lifecycle使用詳解Android元件
- iOS螢幕旋轉解決方案iOS
- ubuntu螢幕旋轉Ubuntu
- Android中元件生命週期完全解析Android元件
- orientationchange 螢幕旋轉事件事件
- Android官方架構元件Lifecycle:生命週期元件詳解&原理分析Android架構元件
- React 元件生命週期詳解React元件
- React元件生命週期詳解React元件
- mui 控制旋轉螢幕方向UI
- Android View的生命週期詳解AndroidView
- 你真的瞭解 React 生命週期嗎React
- React元件生命週期React元件
- React 元件生命週期React元件
- UIAbility元件生命週期UI元件
- Android Activity生命週期Android
- Angular元件——元件生命週期(二)Angular元件
- Angular元件——元件生命週期(一)Angular元件
- Vue父子元件生命週期Vue元件
- react之元件生命週期React元件
- Swift橫豎屏切換、自動旋轉螢幕、手動旋轉螢幕、鎖定當前螢幕禁止轉屏、橫豎屏頁面跳轉過度、橫豎屏UI適配SwiftUI
- 自定義元件-元件的生命週期元件
- Android之各生命週期Android
- Android四大元件——Activity——Activity的生命週期Android元件
- win10平板不能自動旋轉螢幕如何解決Win10
- Angular2 元件生命週期Angular元件
- 理解React-元件生命週期React元件
- 重溫Android四大元件—Activity的生命週期Android元件
- Android Service生命週期淺析Android
- Flutter仿Android生命週期LifecycleStateFlutterAndroid
- Linux 核心測試的生命週期Linux
- Android入門教程之Activity(生命週期,啟動...)Android
- [譯] android應用開發者,你們真的瞭解Activity的生命週期嗎?Android
- [譯] android應用開發者,你們真的瞭解Fragment的生命週期嗎?AndroidFragment
- ios一句程式碼搞定螢幕旋轉iOS
- React元件和生命週期簡介React元件
- Vue 元件生命週期:探索鉤子Vue元件
- vue總結「三」--元件生命週期Vue元件