Activity的跳转及返回值,activity的生命周期
Activity生命周期
從創建到銷毀的生命周期:
onCreate()→onStart()→onResume()→onPouse()→onStop()→onDestroy()
從起動到后臺再到前臺:
onCreate()→onStart()→onResume()→onPouse()→onStop()→onRestart()→onStart()→onResume()
?
啟動第二個activity
1. 創建new activity
2. 創建對應的new xml布局文件
3. 在new activity中setContentView(R.layout.new xml);關聯起來
4. 將new activity在AndroidMainfest.xml中注冊一下, 包括改名字name屬性、有intent_filter的是首啟動頁面
在原來<activity 。。。/>下加入新的
<activity android:name=".demo_act"android:theme="@android:style/Theme.DeviceDefault.Dialog"樣式效果 可不做Activity跳轉Eg:Intent intent = new Intent(Second.this,first.class);startActivity(intent);----------------------------------------------------無返回值?
1. Intent:意圖,協助完成Android各個組件之間的通訊
2.
①startActivity(intent)
②startActivityForResult(intent,requestCode)//有返回值
onActivityResult(int requestCode,int resultCode,Intent data)//接收返回值A頁面
setResult(resultCode,data)//設置返回值B頁面
第1種方法
ntent intent = new Intent(Second.this,first.class);
startActivity(intent);----------------------------------------------------無返回值
第2種方法
1 bt2.setOnClickListener(new View.OnClickListener() { 2 @Override 3 public void onClick(View v) { 4 Intent intent = new Intent(first.this,Second.class); 5 startActivityForResult(intent,1); 6 } 7 }); 8 9 10 @Override 11 protected void onActivityResult(int requestCode, int resultCode, Intent data) { 12 super.onActivityResult(requestCode, resultCode, data); 13 if(requestCode == 1 && resultCode == 2){ 14 String a = data.getStringExtra("AAA"); 15 tv.setText(a); 16 } 17 ----------------------華麗麗de分界線----------------------- 18 bt2.setOnClickListener(new View.OnClickListener() { 19 @Override 20 public void onClick(View v) { 21 Intent intent = new Intent(); //回傳intent不需要參數了 22 String s= (String)tv.getText(); 23 intent.putExtra("AAA",s); //給意圖intent添加key、value 24 setResult(2, intent); //設置返回標號 ,這里是2;回傳的是intent 25 26 finish(); //銷毀當前頁面 27 } 28 });1.startActivityForResult(intent,requestCode);有返回值
第一個參數是Intent對象
第二個參數是請求的一個標識,即請求標號
2.通過startActivityForResult跳轉,接收返回數據的方法
onActivityResult(int requestCode,int resultCode,Intentdata)
第一個參數是請求的標識
第二個參數是第二個頁面返回的標識
第三個參數是第二個頁面回傳的數據
3.setResult(resultCode,data)
回傳到第一個頁面實際上是一個Intent對象
Intent data=new Intent();
data.putExtra("data",content);
setResut(2,data);
finish();//結束當前頁面
轉載于:https://www.cnblogs.com/zmaibbs7/p/4808842.html
總結
以上是生活随笔為你收集整理的Activity的跳转及返回值,activity的生命周期的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ML 徒手系列 最大似然估计
- 下一篇: linux如何连接移动硬盘