gpt4 book ai didi

java - finish(); 之间的区别和 onBackPressed();

转载 作者:搜寻专家 更新时间:2023-11-01 07:43:26 25 4
gpt4 key购买 nike

以编程方式结束 Activity 的 (finish()) 和 (onBackPressed()) 之间有什么区别???

我想在一个命令(intent)之后关闭 Activity 是通过命令(finish)还是使用命令(onBackPressed)关闭它更好

Intent intent = new Intent ();
intent.putString("name", "Your Name");
setResult(RESULT_OK,intent);
onBackPressed();

或者这个更好

Intent intent = new Intent ();
intent.putString("name", "Your Name");
setResult(RESULT_OK,intent);
finish();

最佳答案

差异

根据 Activity 文档:

OnBackPressed

Called when the activity has detected the user's press of the back key. The default implementation simply finishes the current activity, but you can override this to do whatever you want.

当用户按下后退按钮时触发此方法。按下此按钮时,可以覆盖此方法以执行特殊操作。默认情况下,此方法的实现调用 finish 方法。

finish

Call this when your activity is done and should be closed. The ActivityResult is propagated back to whoever launched you via onActivityResult()

此方法完成 Activity 。它不是专门针对用户事件调用的。当你想关闭一个 Activity 时调用这个方法。不应覆盖此方法。


你的情况

你想让应用程序完成,所以你必须使用 finish()。如果您想模拟用户按下后退按钮,请使用 onBackPressed()

关于java - finish(); 之间的区别和 onBackPressed();,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50046201/

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