Ajout d'une Image dans une cellule
J'ai lu des tas de questions, mais n'arrive pas à trouver la réponse
J'ai un TableView mais je ne peux pas ajouter une image à ma cellule
cell.imageView.image = UIImage(named: "osx_design_view_messages")
Ce code devrait fonctionner parce que je l'ai essentiellement copié à partir d'une réponse à une question mais pour une raison quelconque, cela ne fonctionne pas. Toutes les suggestions?
Im en utilisant swift au fait
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
}
2 réponses
Voici quelques causes possibles de votre problème:
Le prototype de cellule doit inclure un UIImageView. Si vous utilisez un storyboard, sélectionnez le prototype de cellule et assurez-vous que son style est défini sur "Basic" dans l'Inspecteur des attributs (panneau de droite).
L'identifiant de cellule ne correspond pas à l'identifiant saisi pour votre cellule prototype dans votre storyboard. Assurez - vous que "cell" est entré pour "Identifier" également dans l'Inspecteur des attributs.
-
Le l'image ne se charge pas correctement à partir du fichier. Pour tester cela, ajoutez la ligne suivante après l'initialisation de votre image:
println("The loaded image: \(image)")
Après avoir vérifié que tout est défini dans votre storyboard, essayez de l'exécuter en utilisant ce code:
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
}
Swift 3
/ / nous utilisons ceci si vos images sont sur le serveur.
/ / nous obtenons des images à partir d'une url.
// vous pouvez définir l'image à partir de votre Xcode.
/ / Il fait en utilisant attribuer une balise à imageView
- L'URL des images sont dans un tableau name = thumbnail c'est-à-dire self.vignette [indexPath.ligne]
- sur UITableviewCell mettre un imageView sur la cellule
-
Sélectionnez UIimageView attribuez-lui une balise à partir du storyboard.
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