繁体   English   中英

Snackbar 通过片段导航重叠浮动操作按钮

[英]Snackbar Overlapping Floating Action Button Through Fragment Navigation

我遇到了一个奇怪的问题,即Snackbar与应用程序主视图中的floating action button重叠。 对于上下文,我将提供我遇到的问题的简短片段。 完成操作(更新或添加)后,我从单独的片段启动snackbar ,然后返回到主视图(列表片段),其中将显示snackbar ,但snackbar与浮动操作按钮重叠而不是稍微向上移动即使列表片段布局包含协调器布局。 有什么想法可以解决这个问题吗?

当前行为:

https://i.imgur.com/Y5GSXZ2.gif

期望的行为:

https://i.imgur.com/hMfHSa6.gif

下面是我在导航回主片段(列表片段)时调用的代码。

createSnackBar(requireView(),R.string.successfully_updated, Snackbar.LENGTH_SHORT)
findNavController().navigate(R.id.action_updateFragment_to_listFragment)

createSnackBar function 的实现。

fun createSnackBar(view: View, @StringRes message: Int, duration: Int) {
    val resources = view.resources
    val snackBar = Snackbar.make(view, resources.getString(message), duration)
    snackBar.show()
}

您需要使用setAnchorView将 fab 按钮设置为SnackBar的锚视图

fun createSnackBar(view: View, @StringRes message: Int, duration: Int) {
    val resources = view.resources
    val snackBar = Snackbar.make(view, resources.getString(message), duration)
    snackBar.setAnchorView(R.id.myFab) // replace myFab with your fab button id
    snackBar.show()
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM