SAN*_*HYA 8 android android-intent android-activity
我点击Parent的按钮开始儿童活动.我在儿童活动中计算一些结果(字符串类型)并完成孩子回到父母.有没有更好的方法来使用Intent或extras在Parent中获得该结果?(我可以通过在Child中将结果变量设置为public&static来获得Parent中的结果)请帮助我.我是android开发的新手.
startActivityForResult(new Intent(ParentActivity.this, ChildActivity.class), ACTIVITY_CONSTANT);
Run Code Online (Sandbox Code Playgroud)
我应该在Parent的onActivityResult()中写什么?
Par*_*ani 28
代替 startActivityForResult(new Intent(ParentActivity.this, ChildActivity.class), ACTIVITY_CONSTANT);
您可以使用putExtras()方法在活动之间传递值:
在儿童活动中:
Intent data = new Intent();
data.putExtra("myData1", "Data 1 value");
data.putExtra("myData2", "Data 2 value");
// Activity finished ok, return the data
setResult(RESULT_OK, data);
finish();
Run Code Online (Sandbox Code Playgroud)
而在家长的活动,您可以覆盖onActivityResult()和内你可以有意向paramater并从这个方法的意图参数你可以从孩子的活动传递的额外价值,如intent.getStringExtra或intent.getSerializableExtra.
例如:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK && requestCode == REQUEST_CODE) {
if (data.hasExtra("myData1")) {
Toast.makeText(this, data.getExtras().getString("myData1"),
Toast.LENGTH_SHORT).show();
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19821 次 |
| 最近记录: |