SwiftUI中,在视图上应用上下文菜单((contextMenu)是一种扩展UI元素功能的便捷方式。
但如果视图嵌入在Form或Section中,独立视图上弹出的上下文菜单会应用到视图的整个容器上去:


从上面左侧的演示图可以看到,在单独图片视图上激活上下文菜单的背景却包括所有3张图片,这显然不是我们想要的效果。
而上方右侧图片则演示了一种很好的解决方案:每个菜单只为对应的独立图片视图而弹出!
想知道这是如何实现的吗?
无需等待!
Let’s find out!
问题分析 1. 上下文菜单的“美中不足”SwiftUI上下文菜单是一种非常好的视图UI功能扩展,它很好的将用户交互与界面功能融合在了一起。
我们不必写过多的代码就能收获视图增强的交互扩展功能。
在一个视图上弹出上下文菜单很容易,只要在视图上应用contextMenu()修改器方法即可: