gpt4 book ai didi

swift - 原型(prototype)单元格 + 图像 + 委托(delegate)

转载 作者:行者123 更新时间:2023-11-28 12:47:08 24 4
gpt4 key购买 nike

事情是这样的:我创建了一个 tableView 并从另一个 Controller 向它委托(delegate)了一些东西。单元格中的文本标签工作正常,但每当我添加 cell.imageView?.image 时,所有单元格都会更改为该特定图像。

关于如何修复它的任何想法?文本标签是静态的,但图像不是。

在这里,我将图像接收到 tableView:

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) as UITableViewCell!
let row = indexPath.row
let titulo = arrayInfo[row]
let image = imgR
cell.textLabel!.text = titulo
cell.imageView?.image = image

return cell
}

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if(segue.identifier == "add") {
let view = segue.destinationViewController as! EsseVaiPassar
view.delegate = self
view.delegateimg = self
}
}

在这里,我将它从 Controller 传递到另一个带有 tableView 的 Controller :

func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
let pickedImage = info[UIImagePickerControllerOriginalImage] as? UIImage
imagemRecebida.contentMode = .ScaleAspectFit
imagemRecebida.image = pickedImage

delegateimg?.passImage(pickedImage!)
print("IMAGE PICKED: \(pickedImage)")

dismissViewControllerAnimated(true, completion: nil)
}

func imagePickerControllerDidCancel(picker: UIImagePickerController) {
dismissViewControllerAnimated(true, completion: nil)
}

最佳答案

代码按预期工作。对于您的 TextView ,您要求值 arrayInfo[row]。因此,对于每个单元格,当 indexPath.row 更改时,数组中的相应元素将显示在文本字段中。

但是对于你的图像,它只是一个单一的图像而不是一个数组。您没有使用 indexPath.row 来选择特定图像。

要将不同的图像添加到您的 tableView,只需创建一个图像数组,就像您创建一个 String 数组一样。只需实现您为 textView cell.imageView?.image = image[indexPath.row]

实现的逻辑

要仅将图像添加到第一个单元格并将其余单元格留空,请使用此

if indexPath.row == 0
{
cell.imageView?.image = image
}

关于swift - 原型(prototype)单元格 + 图像 + 委托(delegate),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37716198/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com