如何在tableview单元格中输入3个不同的图像?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在tableview单元格中输入3个不同的图像?相关的知识,希望对你有一定的参考价值。
我在tableview单元格中有一个imageview,我有3个不同的图像。
我正在尝试做什么:
我的手机应该是这样的:
img1
img2
img3
img1
img2
img3
img1
.
.
。我该怎么做这个订单?对不起,我的英语不好 :)
这是我的cellofrowat
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
if let jlist = self.joinAllAllowedInnoList, !jlist.isEmpty {
let cell = tableView.dequeueReusableCell(withIdentifier: "JoinCell", for: indexPath) as! JoinCell
//--
cell.delegate = self
cell.indexPath = indexPath
//--
if(indexPath.row % 2 == 0) {
cell.thubnailImageView.image = UIImage(named:"thumb1")
}
else {
cell.thubnailImageView.image = UIImage(named:"thumb2")
}
cell.participationEndDate.text = jlist[indexPath.row].joinEnd
cell.titleLabel.text = jlist[indexPath.row].shortDesc
return cell
}
else {
let cell = UITableViewCell()
cell.selectionStyle = .none
cell.backgroundColor = .clear
cell.textLabel?.textAlignment = .center
cell.textLabel?.textColor = UIColor.black
cell.textLabel?.text = "nodataavaiable".localized()
return cell
}
}
答案
正确答案是:
let row = indexPath.row + 1
if row % 3 == 0 {
// Img3
}
if (row + 1) % 3 == 0 {
// Img2
}
if (row + 2) % 3 == 0 {
// Img1
}
另一答案
这是一个简单的逻辑。首先,将三个图像放在一个数组中:
let images = [UIImage(named:"thumb1"), UIImage(named:"thumb2"), UIImage(named:"thumb3")]
使其成为视图控制器的属性。
现在在cellForRowAt
你只需:
cell.thubnailImageView.image = images[indexPath.row % 3]
而已。
如果你不想要一个数组,你可以做一些简单的事情:
let imgNum = indexPath.row % 3
if imgNum == 0 {
// use Img1
} else if imgNum == 1 {
// use Img2
} else {
// use Img3
}
以上是关于如何在tableview单元格中输入3个不同的图像?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用分页更改 tableview 自定义单元格中的 imageview 图像。
如何在可重用的 tableView 单元格中更新 UITextfield 中的文本值,每个单元格中的值不同
如何以编程方式在 TableView 单元中添加多个 UIImageView