我需要一点帮助来刷新我的应用程序中的一项活动。我正在使用选项卡主机活动并连接到 Web 服务并从我的子活动之一下载一些数据。当我在子活动中按下同步按钮时,我将启动一个不在选项卡主机中的新活动,同步完成后,它会返回到其父活动(子活动)。我想要实现的目标是当我返回活动时刷新活动。当我在互联网上检查时,我发现最好的选择是使用startActivityForResult
,但我真的不明白如何使用它以及当我收到已完成活动的结果时如何刷新活动。
如果有人能帮助我,我会很高兴。谢谢!
EDIT:
我正在使用这段代码,它甚至没有显示登录onActivityResult
MyCollectionId.class :
Intent intent = new Intent(MyCollectionId.this, Synchronization.class);
intent.putExtra("process", 2);
startActivityForResult(intent, 1);
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(resultCode==RESULT_OK){
Log.e("","OnActivityResult");
Intent refresh = new Intent(this, MyCollectionId.class);
startActivity(refresh);
this.finish();
}
}
同步.类:
Intent intent = new Intent();
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
setResult(RESULT_OK,intent);
finish();
按下按钮时:
Intent intent = new Intent(this, SyncActivity.class);
//intent.putExtra("someData", "Here is some data");
startActivityForResult(intent, 1);
然后在同一个 Activity 类中:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(resultCode==RESULT_OK){
Intent refresh = new Intent(this, InitialActivity.class);
startActivity(refresh);
this.finish();
}
}
同步活动将具有:
setResult(RESULT_OK, null);
finish();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)