activity的跳轉需要建立intent物件,通過設定intent物件的引數指定要跳轉activity通過設定activity的包名和類名實現跳轉,稱為顯式意圖
通過指定動作實現跳轉,稱為隱式意圖
隱式意圖啟動activity,需要為intent設定以上三個屬性,且值必須與該activity在清單檔案中對三個屬性的定義匹配
intent-filter節點及其子節點都可以同時定義多個,隱式啟動時只需與任意乙個匹配即可
獲取通過setdata傳遞的資料
//獲取啟動此activity的intent物件
intent intent = getintent();
uri uri = intent.getdata();
oncreate–>onstart–>onresume–>onpause–>onstop–>ondestory
onstart–>onresume–>onpause–>onstop
onresume–>onpause
每個應用會有乙個activity任務棧,存放已啟動的activityactivity的啟動模式,修改任務棧的排列情況
singetask 單一任務棧,在當前任務棧裡面只能有乙個例項存在
singleinstance啟動模式非常特殊, activity會執行在自己的任務棧裡面,並且這個任務棧裡面只有乙個例項存在
預設情況下 ,橫豎屏切換, 銷毀當前的activity,重新建立乙個新的activity在一些特殊的應用程式常見下,比如遊戲,不希望橫豎屏切換activity被銷毀重新建立快捷鍵ctrl+f11
需求:禁用掉橫豎屏切換的生命週期
1. 橫豎屏寫死
android:screenorientation=」landscape」
android:screenorientation=」portrait」
讓系統的環境 不再去敏感橫豎屏的切換。
android:configchanges="orientation|screensize|keyboardhidden"
步驟:
1. 開啟activity並且獲取返回值
startactivityforresult(intent, 0);
2. 在新開啟的介面裡面實現設定資料的邏輯
intent data = new intent();
data.putextra("phone", phone);
//設定乙個結果資料,資料會返回給呼叫者
setresult(0, data);
finish();//關閉掉當前的activity,才會返回資料
在開啟者activity裡面實現方法
onactivityresult(int requestcode, int resultcode, intent data)
通過data獲取返回的資料
根據請求碼和結果碼確定業務邏輯
關於頁面跳轉和資料傳遞 未完待續
oncreate activity被建立的時候呼叫 onstart activity能被使用者看見,但是沒有獲得焦點 onresume activity獲得焦點,此時 activity稱為前台 activity onpause activity失去焦點,但是依然可見 onstop activity不...
頁面跳轉與資料傳遞
建立第二個activity activity的跳轉 activity的跳轉需要建立intent物件,通過設定intent物件的引數指定要跳轉activity 通過設定activity的包名和類名實現跳轉,稱為顯式意圖 通過指定動作實現跳轉,稱為隱式意圖 顯式意圖 隱式意圖 隱式意圖啟動activit...
Android頁面跳轉
頁面跳轉大致分為兩種,一種是顯示跳轉,一種是隱式跳轉,目前正在學習中,只知道這兩種 顯示跳轉 第乙個引數 上下文 第二個引數 要跳轉的頁面 intent intent new intent myactivity.this,mainactivity.class 加資料 第乙個引數 鍵 第二個引數 值 ...