Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/121.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Swift TapGestureRecognitor和UIButton_Ios_Swift - Fatal编程技术网

Ios Swift TapGestureRecognitor和UIButton

Ios Swift TapGestureRecognitor和UIButton,ios,swift,Ios,Swift,我是Swift的新手,所以对于任何类型的错误我都很抱歉。 在我的视图控制器中,我有一个视图,CanvasView,我希望用户单击一个按钮并添加一个点击的形状。我创建了一个名为ShapeSquare的uiview,我有三个按钮和三种不同的形状。不幸的是,我不明白我错在哪里。这只是代码的一部分。 如有任何建议,将不胜感激 @IBOutlet weak var CanvasView: CanvasView! override func viewDidLoad() { super.viewD

我是Swift的新手,所以对于任何类型的错误我都很抱歉。 在我的视图控制器中,我有一个视图,CanvasView,我希望用户单击一个按钮并添加一个点击的形状。我创建了一个名为ShapeSquare的uiview,我有三个按钮和三种不同的形状。不幸的是,我不明白我错在哪里。这只是代码的一部分。 如有任何建议,将不胜感激

@IBOutlet weak var CanvasView: CanvasView!


override func viewDidLoad() {
    super.viewDidLoad()


    let tapGR = UITapGestureRecognizer(target: self, action: Selector(("didTap")))
    tapGR.numberOfTapsRequired = 1
    CanvasView.isUserInteractionEnabled = true
    CanvasView.addGestureRecognizer(tapGR)

}
func didTap(tapGR: UITapGestureRecognizer) {
    let tapPoint = tapGR.location(in: CanvasView)
    let shapeView = ShapeSquare(origin: tapPoint)
    CanvasView.addSubview(shapeView)

}


@IBAction func SquareShape(_ sender: UIButton) {
    CanvasView.setNeedsDisplay()       
}
一,-

二,-

let tapGR = UITapGestureRecognizer(target: self, action: #selector(didTap(_:)))
@objc func didTap(_ tapGR: UITapGestureRecognizer) {