dialog像父activity传递参数

it2022-05-05  168

启动新activity有两种方式:

startActivityForResult(Intent, int); startActivity(Intent, Bundle);

新开启的dialog像父activity传递参数用第一种方法。

startActivityForResult(Intent, int)

intent:要传递的值

int:给新开启的dialog打标签,便于识别,同一个activity中可能开启好多个新activity

 

新开启的activityB用

Intent intent = new Intent(); intent.putExtra("dateTime", df.format(dateAndTime.getTime())); this.setResult(0, intent); this.finish();

这种方式向父activity传值。

 

那父activityA如何接收呢?

protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (data != null) { mShowTime.setText(data.getStringExtra("dateTime")); } }

重写onActivityResult方法,activityB调用finish()方法后,会自动调用onActivityResult。

这里面的requestCode就是我们刚刚设置的“0”,可以根据requestCode做不同的操作。

转载于:https://www.cnblogs.com/reita/p/3446813.html


最新回复(0)