gpt4 book ai didi

android - 通过在外部单击可以关闭 PopupMenu 的方式关闭 PopupWindow

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

我开发了一个适用于平板电脑的 Android 应用程序。当用户单击设置按钮时,我想在屏幕右上角向用户显示一个对话框,可以在其中配置设置。

鉴于对话框很复杂,我觉得 PopupWindowPopupMenu 更合适。 PopupMenu 具有良好的行为,当用户在菜单外单击时它会自动关闭。如何让 PopupWindow 以同样的方式运行?

            val popupView = layoutInflater.inflate(R.layout.popup_window, null)
val popupWindow = PopupWindow(
popupView,
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT
)
popupWindow.showAsDropDown(appCompactImageButton, 20, 0)

最佳答案

你只需要设置 PopupWindowsetBackgroundDrawablesetOutsideTouchable 属性,如果你触摸到窗口之外,它应该关闭窗口。

PopupWindow popupWindow = new PopupWindow(contentView, ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
popupWindow.setBackgroundDrawable(new ColorDrawable());
popupWindow.setOutsideTouchable(true);

关于android - 通过在外部单击可以关闭 PopupMenu 的方式关闭 PopupWindow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57042085/

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