Android刷新当前活动

我想编程我的Android应用程序来刷新ButtonClick的当前活动。 我在活动布局的顶部有一个button,可以完成这项工作。 当我点击button时,当前活动应该重新加载 – 就像设备重启一样。

谢谢

public void onClick (View v){ Intent intent = getIntent(); finish(); startActivity(intent); } 

你可以试试这个

 finish(); startActivity(getIntent()); 

之前曾询问过这个问题: 如何重新启动Android活动

在一个活动中,您可以调用recreate()来“重新创build”活动(API 11+)

这是一个刷新button的方法,但它在我的应用程序中运行良好。 在完成()你杀死的实例

 public void refresh(View view){ //refresh is onClick name given to the button onRestart(); } @Override protected void onRestart() { // TODO Auto-generated method stub super.onRestart(); Intent i = new Intent(lala.this, lala.class); //your class startActivity(i); finish(); } 

这就是我看到的。

只需使用它或将其添加到静态类助手,并从任何项目中调用它。

 /** Current Activity instance will go through its lifecycle to onDestroy() and a new instance then created after it. */ @SuppressLint("NewApi") public static final void recreateActivityCompat(final Activity a) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { a.recreate(); } else { final Intent intent = a.getIntent(); intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION); a.finish(); a.overridePendingTransition(0, 0); a.startActivity(intent); a.overridePendingTransition(0, 0); } } 

它应该重新开始并删除以前当前活动的所有实例。

不,不应该。

它应该更新其数据(例如,重新requery() Cursor )。 那么就不会有“以前的现在活动的实例”担心了。

你可以试试这个:

  CookieSyncManager.createInstance(this); CookieManager cookieManager = CookieManager.getInstance(); cookieManager.removeAllCookie(); Intent intent= new Intent(YourCurrent.this, YourCurrent.class); intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(intent); 

您可以使用:

 startActivity(MyClass.this, MyClass.class).setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 

最简单的方法是调用onCreate(null); 你的活动将会像新的一样。

从对话框到要刷新的活动。 如果不是第一次活动!
像这样: mainActivity >> objectActivity >> 对话框
在你的对话类中:

  @Override public void dismiss() { super.dismiss(); getActivity().finish(); Intent i = new Intent(getActivity(), objectActivity.class); //your class startActivity(i); } 

尝试这个

简单的方法

  Intent intent=new Intent(Current_Activity.this,Current_Activity.class); startActivity(intent); finish();