Итак, я хочу поместить различные изображения в ячейки таблицы, и у меня есть 3 разных файла. Я уже сделал некоторую кодировку, но теперь у меня проблемы с ее завершением. Пожалуйста, посмотрите мой код и расскажите, как справиться с этой борьбой, я новичок в этом. (Застрял целый день) ... Весь смысл в том, чтобы иметь пользовательские ячейки с разными изображениями и двумя ярлыками.Таблица Просмотр пользовательских ячеек с разными данными
Первый файл
class MenuCells {
private var _cellTitle: String
private var _cellDetails: String
private var _cellIcon: Array<String>
var cellTitle: String {
return _cellTitle
}
var cellDetails: String {
return _cellDetails
}
var cellIcon: Array<String> {
return _cellIcon
}
init(cellTitle: String, cellDetails: String, cellIcon: Array<String>) {
_cellTitle = cellTitle
_cellDetails = cellDetails
_cellIcon = cellIcon
}
func cellData() {
_cellTitle = "x"
_cellDetails = "y"
_cellIcon = ["1","2","3","4"]
}
}
Второй файл
class MenuCell: UITableViewCell {
@IBOutlet weak var bg: UIView!
@IBOutlet weak var cellTitle: UILabel!
@IBOutlet weak var cellDetails: UILabel!
@IBOutlet weak var cellIcon: UIImageView!
override func awakeFromNib() {
super.awakeFromNib()
}
func configureCell(menuCell: MenuCells) {
cellTitle.text = menuCell.cellTitle
cellDetails.text = menuCell.cellDetails
cellIcon.image = UIImage(named: "\(menuCell.cellIcon)")
}
}
третьего файла (Здесь Im застрял, я не знаю, как реализовать данные)
import UIKit
class MenuVC: UIViewController, UITableViewDelegate, UITableViewDataSource {
@IBOutlet weak var tableMenu: UITableView!
override func viewDidLoad() {
super.viewDidLoad()
tableMenu.delegate = self
tableMenu.delegate = self
}
func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 4
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "menuCell", for: indexPath) as? MenuCell
return cell
}
}
Ваш код совершенен. почти –
ViewDidLoad устанавливает 'tableMenu.delegate = self' дважды, и по внешнему виду вы не задали свой источник данных. Попробуйте установить свой источник данных, заменив одну из этих строк на 'tableMenu.dataSource = self', или подключив его на своем раскадровке к вашему ViewController через инспектор соединений. –