Я пытаюсь выучить Swift, поэтому этот вопрос может быть немного глупым, потерпите меня, пожалуйста.
У меня есть функция, которая инициализирует такие свойства, как *
private func loadSampleMeals(){
let photo1 = UIImage(named: "meal1")
let photo2 = UIImage(named: "meal2")
let photo3 = UIImage(named: "meal3")
guard let meal1 = Meal(name: "meal1", photo: photo1, rating: 4) else {
fatalError("Unable to initialize meal1")
}
guard let meal2 = Meal(name: "meal2", photo: photo2, rating: 3) else{
fatalError("Unable to initialize meal2")
}
guard let meal3 = Meal(name: "meal3", photo: photo3, rating: 1) else{
fatalError("Unable to initialize meal3")
}
meals += [meal1, meal2, meal3]
}
ТогдаЯ пытаюсь загрузить их в ячейку таблицы, например -
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cellIdentifier = "MealTableViewCell"
guard let cell = tableView.dequeueReusableCell(withIdentifier: cellIdentifier, for: indexPath) as? MealTableViewCell else {
fatalError("The dequeued cell is not an instance of MealTableViewCell.")
}
let meal = meals[indexPath.row]
cell.nameLabel.text = meal.name
cell.photoImageView.image = meal.photo // <- error here
cell.ratingControl.rating = meal.rating
return cell
}
Я получаю ошибку ниже, когда назначаю свойство изображения в приведенном выше коде -
[UITableViewCellContentView setImage:]: нераспознанный селектор отправлен в экземпляр 0x7fa19ed019a0 2018-05-18 14: 12: 28.845232 + 0530 FoodTracker [2440: 67077] *** Завершение работы приложения из-за необработанного исключения «NSInvalidArgumentException», причина: '- [UITableViewCellContentView setImage:]: unrecognized selectотправлен в экземпляр 0x7fa19ed019a0 '
Я добавил изображения, и они в формате .jpg с именами meal1
, meal2
и meal3
.Но не знаю, что я делаю не так.Интересно, что у меня есть другое изображение - defaultPhoto
в ассистах, и если я закомментирую строку выше, которая выдает ошибку, мой код работает нормально, и эмулятор показывает defaultPhoto
изображение.
Вот как выглядит мой актив-
![enter image description here](https://i.stack.imgur.com/1G8xA.png)
Любая помощь с этим, пожалуйста?Дайте мне знать, если я смогу добавить больше деталей.
Редактировать:
Мои розетки выглядят так -
class MealTableViewCell: UITableViewCell {
//MARK: Properties
@IBOutlet weak var nameLabel: UILabel!
@IBOutlet weak var photoImageView: UIImageView!
@IBOutlet weak var ratingControl: RatingControl!
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
override func setSelected(_ selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
// Configure the view for the selected state
}
}
Проблема только сphotoImageView
.Два других выхода работают нормально.