【发布时间】:2012-01-04 16:06:11
【问题描述】:
我需要一些帮助来刷新我的应用程序中的一项活动。我正在使用选项卡主机活动并连接到网络服务并从我的一项子活动中下载一些数据。当我在我的子活动中按下同步按钮时,我正在启动一个不在选项卡主机中的新活动,并且当同步完成时,它返回到它的父项(子活动)。我想要实现的是在我返回活动时刷新活动。当我通过互联网检查时,我发现最好的选择是使用startActivityForResult,但我真的不明白如何使用它以及当我收到完成活动的结果时如何刷新活动。
如果有人可以帮助我,我会很高兴。谢谢!
编辑:
我正在使用此代码,它甚至没有显示登录 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();
【问题讨论】:
-
你是什么意思:'它甚至没有显示登录'?
-
我的意思是这个日志:
Log.e("","OnActivityResult"); -
在if条件之前尝试移动它
-
你可以试试改成like: setResult(1);结束();在同步中,所以不要发送意图
-
同样的结果,不显示
onActivityResult()
标签: android android-activity refresh android-tabhost