Swift動態添加UIImageView並添加事件,
Swift動態添加UIImageView並添加事件:
1. 建立UIImageView執行個體,並進行初始化
2. 設定UIImageView的使用者互動屬性userInteractionEnabled為True
3. 添加手勢識別事件
4. 實現事件
//擷取螢幕的尺寸 print(UIScreen.mainScreen().bounds) //擷取螢幕應用程式尺寸(不包括狀態列) print(UIScreen.mainScreen().applicationFrame) //定義UIImageView集 var data:[(String,[Int])]=[ ("0.png",[30,80,100,150]), ("half.png",[160,80,100,150]), ("1.png",[290,80,100,150]), ("2.png",[30,260,100,150]), ("3.png",[160,260,100,150]), ("5.png",[290,260,100,150]), ("8.png",[30,440,100,150]), ("13.png",[160,440,100,150]), ("infinitegreatness.png",[290,440,100,150]) ]
//動態添加UIImageView for i in 0..<data.count{ let (name,rect) = data[i] let image:UIImageView = UIImageView.init(frame: CGRect(x: rect[0], y: rect[1], width: rect[2], height: rect[3])) image.image = UIImage(named: name)
//Enable使用者互動 image.userInteractionEnabled = true
//添加手勢識別 image.addGestureRecognizer(UITapGestureRecognizer(target: self, action: "touchSelect:")) self.view.addSubview(image) }
func touchSelect(sender: UITapGestureRecognizer)->Void{ let newImage:UIImageView = UIImageView(frame: CGRectMake(0, 0, UIScreen.mainScreen().bounds.size.width, UIScreen.mainScreen().bounds.size.height)) newImage.image = UIImage(named: "1.png") self.view.addSubview(newImage) }