Добавление изображения в ячейку
Я прочитал кучу вопросов, но не могу найти ответ
У меня есть TableView, но я не могу добавить изображение в свою ячейку
cell.imageView.image = UIImage(named: "osx_design_view_messages")
Этот код должен работать, потому что я в основном скопировал его из ответа на вопрос, но по какой-то причине он не работает. Любые предложения?
Im, использующий быстрый способ
override func tableView(tableView: UITableView!, cellForRowAtIndexPath indexPath: NSIndexPath!) -> UITableViewCell!
{
let cellIdentifier = "cell"
var cell : UITableViewCell
cell = tableView.dequeueReusableCellWithIdentifier(cellIdentifier) as UITableViewCell
cell.textLabel.text = self.recipies[indexPath.row]
var image : UIImage = UIImage(named: "osx_design_view_messages")
return cell
}
Ответы
Ответ 1
Вот несколько возможных причин вашей проблемы:
-
Протокол ячейки должен включать UIImageView. Если вы используете раскадровку, выберите прототип ячейки и убедитесь, что ее стиль установлен на "Основной" в инспекторе атрибутов (правая панель).
-
Идентификатор ячейки не соответствует идентификатору, указанному для вашей ячейки прототипа в вашем раскадровке. Убедитесь, что для "Идентификатор" также введена "ячейка" в инспекторе атрибутов.
-
Изображение не загружается из файла. Чтобы проверить это, добавьте следующую строку после инициализации изображения:
println("The loaded image: \(image)")
После проверки того, что все настроено в вашем раскадровке, попробуйте запустить его с помощью этого кода:
override func tableView(tableView: UITableView!, cellForRowAtIndexPath indexPath: NSIndexPath!) -> UITableViewCell!
{
let cellIdentifier = "cell"
var cell : UITableViewCell = tableView.dequeueReusableCellWithIdentifier(cellIdentifier) as UITableViewCell
cell.textLabel.text = self.recipes[indexPath.row]
var image : UIImage = UIImage(named: "osx_design_view_messages")
println("The loaded image: \(image)")
cell.imageView.image = image
return cell
}
Ответ 2
Swift 3
//мы используем это, если ваши изображения находятся на сервере.
//мы получаем изображения с URL-адреса.
//вы можете установить изображение из вашего Xcode.
//это выполняется с помощью назначения тега imageView
- URL-адрес изображений находится в имени массива = thumbnail i.e self.thumbnail [indexPath.row]
- on UITableviewCell помещает изображение в ячейку
-
выберите UIimageView, назначив ему тег из раскадровки.
let pictureURL = URL(string: self.thumbnail[indexPath.row])!
let pictureData = NSData(contentsOf: pictureURL as URL)
let catPicture = UIImage(data: pictureData as! Data)
var imageV = UIImageView()
imageV = cell?.viewWithTag(1) as! UIImageView
imageV.image = catPicture