当前位置:  开发笔记 > 编程语言 > 正文

如何在tableViewCell中运行imagePicker

如何解决《如何在tableViewCell中运行imagePicker》经验,为你挑选了1个好方法。

我有一个带有单元格的tableView.在这个单元格中,我有一个imageView和一个覆盖它的按钮.该按钮具有IBAction.点击时,该按钮应该召唤imagePicker.IBAction代码位于单元子视图中.

@IBAction func MyStatusImageButtonAction(sender: AnyObject) {
    // Select Image
    let imagePicker = UIImagePickerController()
    imagePicker.delegate = self
    imagePicker.sourceType = UIImagePickerControllerSourceType.PhotoLibrary
    imagePicker.allowsEditing = false
    self.presentViewController(imagePicker, animated: true, completion: nil)

因为这行我得到一个错误.

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

错误说"类型的值"myCell"没有成员"presentViewController".

我是否应该在托管单元格的viewController中加载imagePicker,然后以某种方式将其传输到单元格?我应该用不同的代码在单元格中加载imagePicker吗?我错了吗?

为清楚起见,我的目标是让用户加载此TableViewController,并且只能将图像分配给此单元格中的imageView.

谢谢.



1> 小智..:

编写协议,TableViewController将为您显示.

protocol ImagePickerDelegate {

    func pickImage()
}

在你的牢房里

var delegate : ImagePickerDelegate?

@IBAction func pickImage(sender: AnyObject) {

    delegate?.pickImage()
}

在你的tableViewController中

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

    let cell = tableView.dequeueReusableCellWithIdentifier("displayImage", forIndexPath: indexPath) as! ImageTableViewCell

    cell.delegate = self

    return cell
}

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)

    var cell = tableView.cellForRowAtIndexPath(NSIndexPath(forRow: 0, inSection: 0)) as! ImageTableViewCell
    cell.displayImageView.image = image
}

希望这有帮助.

推荐阅读
kikokikolove
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有