嗨,我对这种快速入门还很陌生,但我知道一点,我正尝试在数组中插入一个图像和2个文本,如下所示:

@IBAction func doneEditing(_ sender: Any) {
    insertNewActy()
    print(myCellRows, "Saved")

}


func insertNewActy(){

    addTitles = addTitle.text!
    addLocations = addLocation.text!
    newImages = newImage.image!

    let element = MyCellRows(image: newImages,
                             title: addTitles,
                             location: addLocations)

    myCellRows.insert(element, at: 0)

 }

我有3个变数,UIImage之一和String 2

但是当我按下doneEditing按钮时没有任何反应

也许我把这个
addTitles = addTitle.text!
addLocations = addLocation.text!
newImages = newImage.image!

在错误的地方?

我的数组看起来像这样
import UIKit

var myCellRows: [MyCellRows] = []

class ActyViewController: UIViewController {

@IBOutlet weak var myTableView: UITableView!


func createMyCellArray() -> [MyCellRows] {

    var myCells: [MyCellRows] = []

    let dog = MyCellRows(image: #imageLiteral(resourceName: "Dog"),
                         title: "Dog",
                         location: "America")
    let cat = MyCellRows(image: #imageLiteral(resourceName: "Cat"),
                         title: "Cat",
                         location: "Sweden")
    let rabbit = MyCellRows(image: #imageLiteral(resourceName: "Rabbit"),
                         title: "Rabbit",
                         location: "Germany")
    let tiger = MyCellRows(image: #imageLiteral(resourceName: "Tiger"),
                         title: "Tiger",
                         location: "Africa")

    myCells.append(dog)
    myCells.append(cat)
    myCells.append(rabbit)
    myCells.append(tiger)

    return myCells

}

我要完成什么?

我试图添加2个自定义文本和1个图像从users Library on the phone到我的tableview的新单元格。
tableView代码正确并且可以正常工作。

谢谢你的时间。 :)

注意:iam在myTableView.reload()内的tableView类中使用viewDidAppear

最佳答案

由于数组“myCellRows”包含类型为“MyCellRows”的元素,因此出现了错误,但是在func insertNewTitle()中,您试图插入类型为String的元素。
要解决该错误,必须确保在func insertNewTitle()中创建“MyCellRows”类型的实例,然后将该元素附加到“MyCellRows”数组中。

func insertNewTitle(){

let element = MyCellRows(image: #imageLiteral(resourceName: "image"),
                         title: addTitle.text!,
                         location: "Location")

myCellRows.insert(element, at: 0)

}

10-08 12:13