2015-12-19 17 views
0

我想從照片庫中獲取圖像,但我有一個問題。我有3個不同的ImageViews。在這些Imageviews上有3種不同的水龍頭手勢。我需要選擇不同的照片並將其展示給用戶。UIImagePickerController與ImageView

我該怎麼辦?

回答

0
  • 添加UINavigationControllerDelegate, UIImagePickerControllerDelegate到控制器
  • 的函數來創建UITapGesture

    func createTapGesture(selectorName: String) -> UITapGestureRecognizer { 
    
        return UITapGestureRecognizer(target: self, action: Selector(selectorName)) 
    } 
    
    func imageTap(sender: AnyObject) { 
    
        currentImageView = sender.view as! UIImageView 
        pickImage() 
    } 
    
  • 顯示ImagePickerView

    func pickImage() { 
    
        let imagePicker = UIImagePickerController() 
        imagePicker.delegate = self 
        imagePicker.sourceType = UIImagePickerControllerSourceType.PhotoLibrary 
        imagePicker.allowsEditing = false 
        self.presentViewController(imagePicker, animated: true, completion: nil) 
    } 
    
    func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage, editingInfo: [String : AnyObject]?) { 
    
        dismissViewControllerAnimated(true, completion: nil) 
        currentImageView.image = image 
    } 
    
  • 這些代碼添加到viewDidLoad中

    firstImageView.addGestureRecognizer(createTapGesture("imageTap:")) 
    secondImageView.addGestureRecognizer(createTapGesture("imageTap:")) 
    thirdImageView.addGestureRecognizer(createTapGesture("imageTap:")) 
    
  • 在IB,請確保您的圖片視圖中設置User Interaction Enabled檢查

希望這可以幫助

+0

感謝reply.How我可以定義currentImageView可以幫助 –

+0

currentImageView是你可以定義的UIImageView在全球。這樣你就可以在任何地方使用它。 – truongky