【发布时间】:2021-03-14 16:42:58
【问题描述】:
-
我有一个对象数组。
-
每个对象都有一个 ID。
-
我有一个 UIStackview。
-
每个对象都作为排列好的子视图(也是一个 Stackview)动态添加到 UIStackview。
-
每个子视图都有一个 UITapGestureRecognizer。
-
识别器的动作是一个选择器。
如何在该选择器中传递对象?
子视图的点击手势:
subview.addGestureRecognizer(UITapGestureRecognizer(target: self, action: Selector))
点击触发的功能(为更好理解而修改):
@objc func addModelToScene(sender: AnyObject, myWantedObject: MyObject) {
let anchor = AnchorEntity(plane: .horizontal)
anchor.name = "modelAnchor"
self.arView.scene.addAnchor(anchor)
var cancellable: AnyCancellable? = nil
cancellable = ModelEntity.loadModelAsync(named: myWantedObject.mesh)
.sink(receiveCompletion: {error in
print("Unexpected error: \(error)")
cancellable?.cancel()
}, receiveValue: {entity in
anchor.addChild(entity)
cancellable?.cancel()
})
}
一般来说,问题是:
如何将自定义参数传递给选择器?
【问题讨论】: