在列表Android中再次保存数据



那么,我有两个活动。在第一个中,我有一个列表,我在其中放置了一些数据和一个按钮,用于进入第二个活动。在第二个,我有两个edittext和一个按钮(保存按钮)。当我在EditTexts中引入一些数据时,我将数据保存在第一个活动(列表)中。当我选择列表中的一个项目时,我可以转到第二个活动并修改项目的内容。因此,我显示了引入数据的列表,但我不知道在再次编辑EditTexts后如何保存新数据。我使用onItemClick从列表中选择一个项目。我知道我必须将位置和数据传递给第二个活动,我必须在第二个活动中检索,然后我必须再次向第一个活动发送为项目位置更改的新数据。有什么好主意吗?

尝试从活动中获取结果。

总结文章:

static final int REQUEST_CODE = 1;  // The request code
...
private void itemClicked() {
    Intent intent = new Intent(this, SecondActivity.class);
    // Add any data that you wish to send
    intent.putExtra("DATA", "value");
    startActivityForResult(pickContactIntent, REQUEST_CODE);
}

在您的第二个活动中,接收您希望修改的数据:

String valueToChange = getIntent().getExtras().getString("DATA");

然后把它放在Edit文本中,或者你想对它做什么,当你完成后,把它设置为结果包。

// Create the result Intent
Intent intent = new Intent();
intent.putExtra("RESULT", "YourNewString");
setResult(Activity.RESULT_OK, intent);
finish();

在你的第一个活动中,重写onActivityResult以获得值。

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    // Check which request it is that we're responding to
    if (requestCode == REQUEST_CODE) {
        if (resultCode == RESULT_OK) {
             String newString = data.getExtras().getString("RESULT");
         }
    }
}

你可能还想通过数组发送项目的位置,以便你可以更新它

尝试使用BroadCastReceiver发送更新的内容返回到Activity-A,并在设置相关内容后通知您的Listview

相关内容

  • 没有找到相关文章

最新更新