Activity之间数据的传递

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之间传递数据,可以传递几乎所有的数据类型了
posted @ 2018-04-20 21:14  醉醉龙  阅读(160)  评论(0编辑  收藏  举报