我的应用程序有一个定义的流程,从第 1 个 fragment 开始,一直移动到第 2、第 3、第 4、第 5 和最后的第 6 个 fragment 。由于流的性质,通过 fragment 返回也很常见。
我没有在应用程序中实现后退按钮,因为我记得读过 Google 的设计理论,其中建议永远不要实现后退按钮,因为 Android 设备会实现自己的后退按钮。
我仍在开发中,我已经与用户一起测试了该应用程序,并且我收到了我应该实现后退按钮的反馈。
我的第一个想法是拒绝反馈,因为我上面提到的理论原理,但是我记不住足够详细的原理,无法再次找到它,所以我怀疑我的内存是否不准确。
这个原则正确吗?实现后退按钮是否违反 Google 设计原则?
最佳答案
我想你读到的是this .
Your app should not add a Back button to the UI.
这并不意味着您不能覆盖 onBackPressed
并添加您想要的行为。这仅意味着您应该使用 Android 提供的后退按钮,而不是添加具有相同功能的另一个按钮。我仍然看到大量使用主页按钮的应用程序,例如,其行为与后退按钮相同。
谷歌在上面的链接中给出了这种覆盖行为的简单实现:
override fun onBackPressed() {
if (mWebView.canGoBack()) {
mWebView.goBack()
} else {
// Otherwise defer to system default behavior.
super.onBackPressed()
}
}
在这里,他们使用它为 WebView 提供后退按钮行为。可以通过相同的方式在后台堆栈中浏览您的 fragment 。
此外,用户应该是决定您的用户体验的人,Google 为您提供的指南已被证明是正确的。有时这些指南会随着手机和用户体验的发展而过时。因此,如果您的用户需要后退行为,您应该添加一个。
关于android - 我的应用程序应该实现后退按钮吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50425558/