Ios UIContextMenuActionProvider在项目上放置不需要的复选标记图标

Ios UIContextMenuActionProvider在项目上放置不需要的复选标记图标,ios,swift,ios13,sf-symbols,Ios,Swift,Ios13,Sf Symbols,问题 我当时正在实现UIContextMenuInteraction,结果出现了我无法解释或找到修复方法的行为。从屏幕截图中可以看到,菜单项带有复选标记。这不是故意的,这些复选标记会自动添加。理想情况下,我希望使用SF符号,但我添加的任何图像最终都是这个复选标记。即使我将image设置为nil,它仍然会添加这个奇怪的复选标记 采取的其他步骤:重新安装SF符号和SF Pro,清理构建,重新启动xCode/Simulator 复制:模拟器iOS 13.3、iPhone 7 iOS 13.3 系统:C

问题

我当时正在实现
UIContextMenuInteraction
,结果出现了我无法解释或找到修复方法的行为。从屏幕截图中可以看到,菜单项带有复选标记。这不是故意的,这些复选标记会自动添加。理想情况下,我希望使用
SF符号
,但我添加的任何图像最终都是这个复选标记。即使我将image设置为nil,它仍然会添加这个奇怪的复选标记

采取的其他步骤:重新安装SF符号和SF Pro,清理构建,重新启动xCode/Simulator

复制:模拟器iOS 13.3、iPhone 7 iOS 13.3

系统:Catalina 10.15.1,xCode 11.3.1

代码:

导入UIKit
类ViewController:UIViewController{
让sampleView=UIView(帧:CGRect(x:50,y:300,宽度:300,高度:200))
重写func viewDidLoad(){
super.viewDidLoad()
view.addSubview(sampleView)
sampleView.backgroundColor=.systemIndigo
let interaction=UIContextMenuInteraction(委托:self)
sampleView.addInteraction(交互)
}
}
扩展视图控制器:UIContextMenuInteractionDelegate{
func上下文菜单交互(
_交互:UIContextMenuInteraction,
configurationForMenuAtLocation位置:CGPoint
)->UIContextMenuConfiguration{
让actionProvider:UIContextMenuActionProvider={[weak self]\uuIn
让like=UIAction(
标题:“喜欢”,
图像:UIImage(系统名称:“心脏”),
标识符:无,
可发现性标题:无,
属性:[],
状态:。在
){in
}
让copy=UIAction(
标题:“副本”,
图片:无,
标识符:无,
可发现性标题:无,
属性:[],
状态:。在
){in
}
让delete=ui操作(
标题:“删除”,
图像:UIImage(系统名称:“垃圾”),
标识符:无,
可发现性标题:无,
属性:[.破坏性],
状态:。在
){in
}
返回菜单(
标题:“,
图片:无,
标识符:无,
选项:[],
儿童:[
比如,复制,删除
]
)
}
let config=UIContextMenuConfiguration(标识符:nil,预览提供程序:nil,actionProvider:actionProvider)
返回配置
}
}

您需要将
ui操作.状态
.on
更改为
.off
,以去除复选标记。

我认为
state==.on
表示显示复选标记。@andreasetjen这样做有效。你能把这个贴出来作为答案吗?非常感谢你!