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種方法
bt2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(first.this,Second.class);
startActivityForResult(intent,1);
}
});
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode == 1 && resultCode == 2){
String a = data.getStringExtra("AAA");
tv.setText(a);
}
----------------------華麗麗de分界線-----------------------
bt2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(); //回傳intent不需要參數了
String s= (String)tv.getText();
intent.putExtra("AAA",s); //給意圖intent添加key、value
setResult(2, intent); //設置返回標號 ,這里是2;回傳的是intent
finish(); //銷毀當前頁面
}
});
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();//結束當前頁面
總結
以上是生活随笔為你收集整理的Activity的跳转及返回值,activity的生命周期的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SQLyog连接数据库报错 plugin
- 下一篇: Spring Cloud云服务架构 -