【发布时间】:2019-06-17 04:40:29
【问题描述】:
我通过容器视图创建侧边菜单,当用户点击栏按钮(菜单按钮)时,我只是更改约束并显示或隐藏侧边菜单。但是当侧边菜单打开时,用户可以在所有屏幕中使用元素。当侧边菜单打开或隐藏时,如何仅禁用或启用部分屏幕?
【问题讨论】:
标签: swift uicontainerview
我通过容器视图创建侧边菜单,当用户点击栏按钮(菜单按钮)时,我只是更改约束并显示或隐藏侧边菜单。但是当侧边菜单打开时,用户可以在所有屏幕中使用元素。当侧边菜单打开或隐藏时,如何仅禁用或启用部分屏幕?
【问题讨论】:
标签: swift uicontainerview
假设您的侧边菜单的视图层次结构是这样设置的:
View #1
|_ title label
|_ button
|_ button
您现在可以将它嵌入到另一个视图中,这将是不可见的:
View #0
|_ View #1
|_ title label
|_ button
|_ button
...其中视图 #1 将是您的常规侧边菜单视图,例如覆盖屏幕宽度的 70%。
现在,将视图#0 的背景颜色设置为.clear。
此外,更改约束逻辑以将侧边菜单移动到屏幕边缘。
这将为您提供一个覆盖全屏的侧边菜单,禁用外部的点击,看起来它只覆盖了部分屏幕。
添加UITapGestureRecognizer 以查看#0。触发后,您可以关闭侧面菜单。
【讨论】: