首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

将自定义对象的ArrayList从子活动传回父活动

可以通过以下步骤实现:

  1. 在父活动中创建一个成员变量,用于存储子活动传回的ArrayList对象。例如,可以在父活动中声明一个名为"customList"的ArrayList变量。
  2. 在父活动中启动子活动时,使用Intent对象传递数据。可以使用putParcelableArrayListExtra()方法将ArrayList对象传递给子活动。例如:
代码语言:txt
复制
Intent intent = new Intent(ParentActivity.this, ChildActivity.class);
intent.putParcelableArrayListExtra("customList", customList);
startActivityForResult(intent, REQUEST_CODE);
  1. 在子活动中获取传递的ArrayList对象。可以使用getParcelableArrayListExtra()方法获取传递的ArrayList对象。例如:
代码语言:txt
复制
ArrayList<CustomObject> customList = getIntent().getParcelableArrayListExtra("customList");
  1. 在子活动中对ArrayList进行操作,添加、删除或修改对象。
  2. 在子活动完成后,通过Intent对象将修改后的ArrayList对象传递回父活动。可以使用setResult()方法设置结果码和Intent对象。例如:
代码语言:txt
复制
Intent intent = new Intent();
intent.putParcelableArrayListExtra("customList", customList);
setResult(RESULT_OK, intent);
finish();
  1. 在父活动中重写onActivityResult()方法,获取子活动返回的结果。可以通过resultCode判断操作是否成功,并通过Intent对象获取修改后的ArrayList对象。例如:
代码语言:txt
复制
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    
    if (requestCode == REQUEST_CODE && resultCode == RESULT_OK) {
        ArrayList<CustomObject> customList = data.getParcelableArrayListExtra("customList");
        // 在父活动中使用修改后的ArrayList对象
    }
}

通过以上步骤,就可以将自定义对象的ArrayList从子活动传回父活动,并在父活动中使用修改后的ArrayList对象。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券