我有一个执行AsyncTask onCreate()的应用程序。
AsyncTask从API获取电影详细信息,并将标题,海报和概述添加到列表视图中。 onPostExecute列表视图添加了适配器。
listView.setAdaptor(adaptorxx);
在AsyncTask完成并将适配器添加到listView之后,用户可以按下listView中的项目,然后将一些电影信息添加到另一个名为DetailsActivity的活动中。此活动显示有关电影的详细信息..此活动的功能是将电影添加到"观看列表"
现在:
如何才能让我在回到电影列表视图活动时,使用观看的电影列表更新列表视图?
我尝试了
listView.setAdaptor(null);
Adaptor adaptorxx = new Adaptor(xxx, xxxx, xxxx, xxxx);
listView.setAdaptor(adaptorxx);
创建onPause后onResume中的,没有工作,我也尝试将它添加到onRestart但是没有工作
答案 0 :(得分:0)
我向您展示StartActivityForResult
startActivityForResult()方法有两种变体。
public void startActivityForResult (Intent intent, int requestCode)
public void startActivityForResult (Intent intent, int requestCode, Bundle options)
以下示例
<强> ActivityOne 强>
像这样传递你的意图
Intent intent=new Intent(MainActivity.this,SecondActivity.class);
startActivityForResult(intent, 2);// Activity is started with requestCode 2
然后添加onActivityResult
,其中包含第二个活动的数据
// Call Back method to get the Message from secondActivity
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
super.onActivityResult(requestCode, resultCode, data);
// check if the request code is same as what is passed here it is 2
if(requestCode==2)
{
String message=data.getStringExtra("MESSAGE");
textView1.setText(message);
}
}
<强> ActivityTwo 强>
如下所示传递意图,以便您可以在onActivityResult
中获取意图对象并从中获取数据。
Intent intent=new Intent();
intent.putExtra("MESSAGE",message);
setResult(2,intent);
finish();//finishing activity
注意:添加该数据后,您必须使用notifyDatasetChanged()
方法来引用您的适配器。