在我的应用程序中刷新我的一个活动,我需要一点帮助.我正在使用标签主机活动并连接到Web服务,并从我的一个小孩活动中下载一些数据.当我在我的孩子活动中按同步按钮时,我开始一个不在标签主机的新活动,同步完成后,它返回到它的父(子活动).我想要实现的是在我回到它时刷新活动.当我检查互联网时,我发现最好的选择是使用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(); } }
Synchronization.class:
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,Intent data) { super.onActivityResult(requestCode,data); if(resultCode==RESULT_OK){ Intent refresh = new Intent(this,InitialActivity.class); startActivity(refresh); this.finish(); } }
同步活动将具有:
setResult(RESULT_OK,null); finish();