Activity之間數據的傳遞
阿新 • • 發佈:2018-04-21
nac sta bundle tar this int 傳遞數據 code 映射
1 有關系的方法
method | 作用 | |
第一個Activity | startActivityForResult() | 以這樣的方式開啟一個intent會觸發此Activity的onActivityResult()並接受返回來的數據 |
onActivityResult() | 在這裏處理接收回來的數據 | |
onSaveInstanceState(Bundle outState) | 在onStop()執行前執行,用於保存activity的狀態 | |
第二個Activity | setResult(0, intent) | 這個方法下設置請求碼與返回的intent(這個intent主要用於攜帶數據) |
2 數據傳送媒介(就是Intent和Bundle這兩個改選哪一個)
給你來一段源碼就知道了
public @NonNull Intent putExtra(String name, String value) { if (mExtras == null) { mExtras = new Bundle(); } mExtras.putString(name, value); return this; }
這是Intent.putExtra()的源碼,可以看到其實就是調用的Bundle,所有隨便我們怎麽用都OK的
3 Bundle的一些簡介
A mapping from String keys to various {@link Parcelable} values. 一個從鍵到值的映射
目前我知道的作用也就是Activity之間傳遞數據,可以傳遞幾乎所有的數據類型了
Activity之間數據的傳遞