在Android中重载Activity是一个很好的做法吗?

最好的方法是什么?这一点。完成,然后这个。用Intent启动activity ?


当前回答

对我来说,它是工作的,它没有创建另一个意图和同样的意图新数据加载。

    overridePendingTransition(0, 0);
    finish();
    overridePendingTransition(0, 0);
    startActivity(getIntent());
    overridePendingTransition(0, 0);

其他回答

以一个相同的活动开始,并关闭该活动。

Intent refresh = new Intent(this, Main.class);
startActivity(refresh);//Start the same Activity
finish(); //finish Activity.

在尝试了一段时间后,我发现重新启动一个活动并没有意想不到的后果。此外,我认为这与Android在改变方向时默认做的事情非常相似,所以在类似的情况下我没有理由不这样做。

我也有同样的问题

import android.support.v4.content.IntentCompat;

intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK |IntentCompat.FLAG_ACTIVITY_CLEAR_TASK);

这个代码为我工作。 Android api 17

对我来说,它是工作的,它没有创建另一个意图和同样的意图新数据加载。

    overridePendingTransition(0, 0);
    finish();
    overridePendingTransition(0, 0);
    startActivity(getIntent());
    overridePendingTransition(0, 0);

简单地使用

this.recreate();

这将触发活动中的onCreate方法