gpt4 book ai didi

android - 如何在 fragment 对话框下显示 SnackBar?

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

我有一项与 FragmentDialog 相关的 Activity 。在此对话框的 onResume 中,我通过代码将其高度和重量设置为 80% 和 90%:

WindowManager.LayoutParams layoutParams = new WindowManager.LayoutParams();
layoutParams.copyFrom(getDialog().getWindow().getAttributes());
layoutParams.width = (int)(screenWidth * 0.9);
layoutParams.height = (int)(screenHeight * 0.8);

getDialog().getWindow().setAttributes(layoutParams);

它完美地工作,背景有阴影,前景 FragmentDialog 有适当的尺寸。问题是 - 如何在屏幕底部显示 SnackBar 而不受 FragmentDialog(有阴影,Activity View )的影响而没有阴影?有什么方法可以在 FragmentDialog 后台的 Activity 中禁用特定 View 的阴影?

最佳答案

Material 设计文档说“Snackbars appear above most elements on screen, and they are equal in elevation to the floating action button. However, they are lower in elevation than dialogs, bottom sheets, and navigation drawers”。从那里开始,我认为您应该考虑在 DialogFragment 中显示 Snackbar 或只在其顶部显示一个小对话框。

如果你想在对话框 fragment 中显示Snackbar,你可以这样做:

public void showSnackBar(final View parent, final String text) {
Snackbar sb = Snackbar.make(parent, text, Snackbar.LENGTH_LONG);
sb.show();
}
  • 注意:parent 是整个对话框的 View 。您可以通过将 fragment 的 Root View 设为 CoordinatorLayout 并在该 View 上显示 Snackbar 来改进它。

关于android - 如何在 fragment 对话框下显示 SnackBar?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34218567/

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