行を選択すると、テキストの色が白くなります。ただし、行を更新するためにスクロールすると、テキストの色が黒に戻ります。したがって、if(cell.selected)というロジックを追加しました。しかし、それは動作しませんでした。私がスクロールするとき。cell.selectedが機能しません
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let selectedCell:UITableViewCell = tableView.cellForRowAtIndexPath(indexPath)!
for subview in selectedCell.subviews {
if let view = subview as? UILabel {
view.textColor = UIColor.whiteColor()
}
}
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var renderWidth:CGFloat = 8
var renderYPosition:CGFloat = 15
let cell:UITableViewCell = UITableViewCell(style: UITableViewCellStyle.Subtitle, reuseIdentifier: "idcell")
let date = UILabel(frame: CGRectMake(renderWidth, renderYPosition, 110, 20))
let dateText = "asdasdsad"
date.text = dateText
if (cell.selected) {
date.textColor = UIColor.whiteColor()
}
cell.addSubview(date)
}
「スクロールして行を更新する」とはどういう意味ですか? 'reloadData'のような関数を呼び出しましたか? –
番号。私はcellforrowatindexpathを意味する – henry
なぜあなたの細胞を再使用しないでください? –