我有一个标准的主 - 细节场景。但是,我需要对详细信息项执行更新/删除(这很容易),然后返回到列表项视图,我从中选择了要更新的项,并更新了行。所有数据都由contentprovider处理,我知道更新我的适配器。我无法弄清楚如何回到列表视图。任何想法都表示赞赏。
答案 0 :(得分:0)
您可以使用startActivityForResult()
方法从其他活动中获取结果。
首先,您必须在主Activity中使用startActivityForResult。
Intent intent=new Intent(MainActivity.this,SecondActivity.class);
startActivityForResult(intent, 2);// Activity is started with requestCode 2
您可以在详细的Activity中设置数据,并在调用者Activity中将其恢复。 只需将数据放入详细的活动中:
Intent result=new Intent();
result.putExtra("MESSAGE",message);
setResult(10, result);
finish();//finishing activity
这里10是详细活动的结果代码,您可以为不同类型的结果提供不同的结果代码。
以下是如何在调用者Acitvity中获得结果,只需覆盖onActivityResult()方法。
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
// check for the request code and result code
if(requestCode==2 && resultCode == 10) {
String message=data.getStringExtra("MESSAGE");
textView1.setText(message);
}
}