I am having a confusion in restarting an activity.. I have two function that works well for the same task. Please guide me which is best and why?
public void restart()
{
Intent intent = getIntent();
overridePendingTransition(0, 0);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
finish();
overridePendingTransition(R.anim.fade,R.anim.fade);
startActivity(intent);
}
or
public void restart()
{
onCreate();
}
Thanks In advance?
I think this is a cleaner way for your requirement.
Intent intent = getIntent();
overridePendingTransition(0, 0);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
finish();
overridePendingTransition(0, 0);
startActivity(intent);
Activities in the system are managed as an activity stack. When a new activity is started, it is placed on the top of the stack and becomes the running activity -- the previous activity always remains below it in the stack, and will not come to the foreground again until the new activity exits.
for more info see Activity
Sathish
This has been posted before:
Intent intent = getIntent();
finish();
startActivity(intent);
来源:https://stackoverflow.com/questions/6134249/android-activity-restart