Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android 之 startActivityForResult

Android 之 startActivityForResult

編輯:關於Android編程

一:Android中activity之間的常見跳轉實現

1)startActivity(Intent intent);

2)startActivityForResult(Intent intent , int requestCode);

區別在於(2)可以回傳數據。如下圖:

\

 

二:使用說明

 

startActivityForResult(Intent intent, int requestCode)
啟動多個activityA、B、C,可通過requestCode確定區別;
setResult(resultCode);
函數A、B、C返回時,通過resultCode區別;
@Override    protected void onActivityResult(int requestCode, int resultCode, Intent data) {        super.onActivityResult(requestCode, resultCode, data);    }
  •  

 

通過requestCode和resultCode確定數據;

三:注意事項

\

onBackPressed()調用setResult();

 

\

onDestroy()調用setResult();

對比上圖可知onActivityResult會在Activity-B onPause()函數之後,Activity-A onRestart()函數之前調用。

所以setResult()需要在onPause()函數之前調用,而onStop()或者onDestroy()函數無法回傳數據。

四:引申

onStop()和onDestroy()做清理、釋放資源的操作,而不應傳遞數據。

 

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved