2016-01-18 46 views
0

我有一个UIImagePickerController和2个按钮。当我点击按钮1时,我想设置按钮1的图像。当我点击按钮2时,我想设置按钮2的图像。我已经使用UIImagePickerController成功设置了按钮1的图像,但未能如此与按钮2.这是我的代码:1 UIImagePickerController和2个按钮

var whichButton: Int = 0 

func displayImagePicker(){ 

    let imagePicker = UIImagePickerController() 
    imagePicker.delegate = self 
    imagePicker.sourceType = UIImagePickerControllerSourceType.PhotoLibrary 
    imagePicker.allowsEditing = false 

    self.presentViewController(imagePicker, animated: true, completion: nil) 

} 

@IBAction func chooseImageOne(sender: AnyObject) { 

    displayImagePicker() 

    whichButton = 1 

} 

@IBAction func chooseImageTwo(sender: AnyObject) { 

    displayImagePicker() 

    whichButton = 2 

} 

func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage, editingInfo: [String : AnyObject]?) { 

    self.dismissViewControllerAnimated(true, completion: nil) 

    if whichButton == 1 { 

     self.imageOne.setImage(image, forState: UIControlState.Normal) 

    } else if whichButton == 2 { 

     self.imageTwo.setImage(image, forState: UIControlState.Normal) 

    } 
} 

正如你可以看到我试过有VAR来跟踪我攻上按钮。我不确定我在didFinishPickingImage函数中做了什么是对的。我很快就会有新的发现,如果任何人都可以说出一些光芒,那真的会很棒!在此先感谢

回答

0

我亲自检查了xcode上的代码及其正确性。请看你是否给IBOutlet设置self.imageTwo按钮,并检查IBAction,即touchUpInside为imageTwo按钮。否则一切都很好

0

您的代码在功能上是正确的。看起来您的@IBAction功能没有正确连接,或者第二个按钮的@IBOutlet。您可以使用按钮处理程序中的打印语句或调试器轻松检查此内容。

+0

对不起,我很新的swift,你可以进一步了解我如何检查,在调试器?谢谢 –

+0

如果您不知道如何使用调试器,请使用print语句。要了解如何使用Xcode,请在线查找教程或访问developer.apple.com。 – Mundi

+0

好吧,所以我检查和功能正确连接,任何想法为什么代码仍然不工作? –