我是OOP的新手,而且很快,在另一个类中调用IBOutlets时遇到问题。
我为UIImageView声明了var IBOutlet
`class ViewController: UIViewController {
@IBOutlet weak var deleteImageView: UIImageView!
...
}
` 我想在一个将圆绘制为视图的子视图的CircleView类中使用它 我的目标是知道何时创建的圆与我的“ deleteImageView”相交时将其删除:
class CircleView: UIView {
@objc func didPan(panGR: UIPanGestureRecognizer) {
...
switch panGR.state {
case .began, .changed:
...
case .ended:
if self.frame.intersects(deleteImageView.frame) {
self.removeFromSuperview()
}
break
default:
break
}
}
}
在“ case .ended”中,我想访问deleteImageView,但我不知道如何。 我还尝试在vc中创建一个函数,该函数接受UIView(圆圈)作为参数,并从CircleView中调用它,但出现错误...这是我尝试的下一件事情:
class ViewController: UIViewController {
@IBOutlet weak var deleteImageView: UIImageView!
...
func deleteSubView(subView: UIView){
if subView.frame.intersects(deleteImageView.frame) {
subView.removeFromSuperview()
}
}
在开关部分的CircleView中:
case .ended:
ViewController.deleteSubView(subView: self)
错误:“类型'ViewController'没有成员'deleteSubView'” 你能帮我吗?