如何在不重复使用的情况下选择tableview中的第一个单元格?

时间:2016-12-02 21:34:00

标签: ios swift uitableview

我想在tableview中选择第一个单元格并给它一个100%的alpha,仅适用于第一个单元格,dequeueReusableCell方法不应该重用此样式。

if indexPath.row == 0 {
   cell.imageView.alpha = 1.0
}

当我在函数cellForItemAt中使用上面的代码时,它将被设置为每7个单元格的alpha为1.0。我只希望它应用于第一个单元格,不应该重复使用样式......我该如何解决这个问题?我应该创建另一个自定义单元格,还是在代码中有一种实现方法呢?

2 个答案:

答案 0 :(得分:2)

如果它不是第一个单元格,您应该重置imageView的alpha。

if indexPath.row == 0 {
   cell.imageView.alpha = 1.0
}
else {
   cell.imageView.alpha = 0.0 // or whatever alpha value you need
}

答案 1 :(得分:2)

创建一个UITableViewCell xib子类。然后,您可以在设置表时使用不同的reuseIdentifier注册相同的单元格。

tableView.register(CustomCell, forCellReuseIdentifier: "AlphaCell")
tableView.register(CustomCell, forCellReuseIdentifier: "{REUSE_ID}")

当您设置单元格时:

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

为您的第一个单元格取消“AlphaCell”,为其他单元格取出“{REUSE_ID}”。