2016-08-22 89 views
-2

我知道的方式来重启目前的活动,我们做的是我可以使用当前活动重新启动上一个活动吗?

Intent intent=getIntent(); 
finish(); 
startActivity(intent); 

但对我来说,我的设置是在设置活动,如果我改变设置,然后再回到MainActivity不会应用这些设置,我必须重新启动我的应用程序。那么,在这种情况下,最好的方法是重新启动活动?我对吗?或者有另一种方式?建议我最好的方法。谢谢!!

+0

如何从以前的活动开始当前活动? –

+0

Intent intent = new Intent(currentActivity.this,AnotherActivity.class); startActivity(intent) – Queendevelopers

+1

“标准”Android方法是读取'MainActivity'的'onStart()'回调中的设置并在那里进行更改。 – theFunkyEngineer

回答

1

onStart回调活动的了解您的设置,显示适当的用户界面。

要更新工具栏,请在支持库中调用invalidateOptionsMenu()supportInvalidateOptionsMenu()。这将触发onCreateOptionsMenu()的呼叫,您可以在该呼叫中找出显示用户当前设置的内容。

+0

最好的,谢谢theFunkyEngineer,工作就像一个魅力。你们从哪里学习这些东西?有时候我从你们那里感到惊讶。 – Queendevelopers

0

请申请我的代码,根据自己的需要

SDK 11之前,一个办法做到这一点就像这样:

public void reload() { 
    Intent intent = getIntent(); 
    overridePendingTransition(0, 0); 
    intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION); 
    finish(); 
    overridePendingTransition(0, 0); 
    startActivity(intent); 
} 
相关问题