onBackPressed() 最佳 Practice/Performance
onBackPressed() Best Practice/Performance
我通常这样重写 onBackPressed()
:
@Override
public void onBackPressed() {
super.onBackPressed();
Intent intent = new Intent(getApplicationContext(), HomeActivity.class);
startActivity(intent);
finish();
}
直到现在我才看到当我使用此代码单击后退按钮时 我在过渡中看到一个白色 activity 持续 0.5 秒。
稍微测试了一下,我发现如果我改用这段代码,问题就不会发生:
@Override
public void onBackPressed() {
Intent intent = new Intent(getApplicationContext(), HomeActivity.class);
startActivity(intent);
finish();
super.onBackPressed();
}
这两个代码有什么区别?如果我用第二个就好了?导致任何内存问题? 谢谢
super.onBackPressed
只是调用完成。如果您自己打电话完成,则不需要。只需删除该行。
您可能会看到视觉差异的原因是,在一个中您完成这个意图然后开始一个新的,而不是开始一个新的然后完成这个。第一个可能会短暂留下空白屏幕。
我通常这样重写 onBackPressed()
:
@Override
public void onBackPressed() {
super.onBackPressed();
Intent intent = new Intent(getApplicationContext(), HomeActivity.class);
startActivity(intent);
finish();
}
直到现在我才看到当我使用此代码单击后退按钮时 我在过渡中看到一个白色 activity 持续 0.5 秒。
稍微测试了一下,我发现如果我改用这段代码,问题就不会发生:
@Override
public void onBackPressed() {
Intent intent = new Intent(getApplicationContext(), HomeActivity.class);
startActivity(intent);
finish();
super.onBackPressed();
}
这两个代码有什么区别?如果我用第二个就好了?导致任何内存问题? 谢谢
super.onBackPressed
只是调用完成。如果您自己打电话完成,则不需要。只需删除该行。
您可能会看到视觉差异的原因是,在一个中您完成这个意图然后开始一个新的,而不是开始一个新的然后完成这个。第一个可能会短暂留下空白屏幕。