gpt4 book ai didi

java - Android: onPause() 是否保证在 finish() 之后被调用?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:20:00 25 4
gpt4 key购买 nike

在任何地方都找不到可靠的答案。我有一个方法,其中调用 finish(),然后调用 onPause()。

是否保证在调用 finish() 之后调用 onPause()?

最佳答案

如果您在 Activity 生命周期的某个时刻调用 finish(),Android 通常会调用 onPause(),除非您调用 finish()在你的 onCreate() 中。

public class MainActivity extends ActionBarActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
finish();
}



@Override
protected void onPause() {
super.onPause();
Log.d(TAG, "onPause");
}

@Override
protected void onStop() {
super.onStop();
Log.d(TAG, "onStop");
}

@Override
protected void onDestroy() {
super.onDestroy();
Log.d(TAG, "onDestroy");
}
}

运行,观察你的日志将只包含“onDestroy”。几乎在任何其他地方调用 finish(),您会看到调用了 onPause()。

关于java - Android: onPause() 是否保证在 finish() 之后被调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28777449/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com