gpt4 book ai didi

ios - UITableViewCells "shines"槽的可扩展内容

转载 作者:行者123 更新时间:2023-11-28 05:32:38 24 4
gpt4 key购买 nike

我刚刚制作了一个 UITableView,点击它们时带有可展开的单元格。展开后,单元格显示 UIDatePicker

展开本身工作正常,但只有在单元格展开时才应该可见的单元格内容有点透过单元格闪耀。这是我正在谈论的内容的屏幕截图: enter image description here

单元格 1 已展开,而其他单元格未展开。如您所见,它们的可展开内容是可见的,但实际上不应该是可见的。

这是我使用的代码:

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

var cellIdentifier = "Cell";

var cell: NewExpenseTableCell;
var array: NSArray = NSBundle.mainBundle().loadNibNamed("Cell", owner: self, options: nil);

cell = array.objectAtIndex(0) as NewExpenseTableCell;
cell.backgroundColor = UIColor.whiteColor();

cell.descriptionLabel?.text = descriptionLabels[indexPath.item];

return cell;
}

var selectedRowIndex = -1;

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {

if selectedRowIndex == indexPath.row {
selectedRowIndex = -1;
} else {
self.selectedRowIndex = indexPath.row;
}
newExpenseTable.beginUpdates();
newExpenseTable.endUpdates();
}

func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {

if indexPath.row == selectedRowIndex {
return 206;
}
return 55;
}

谁能告诉我如何确保 UIDatePicker 仅在单元格展开时可见?

最佳答案

以下是我建议的使单元重用正常工作的方法。

  1. 打开 NewExpenseTableCell 的 .xib 文件。转到属性检查器,输入“NewExpenseTableCell”作为标识符。

  2. 在 View Controller 的 viewDidLoad 方法中,像这样注册 nib:

    self.tableView.registerNib(UINib(nibName: "NewExpenseTableCell", bundle: nil), forCellReuseIdentifier: "NewExpenseTableCell")
  3. cellForRowAtIndexPath 方法中,将前四行替换为:

    var cell = tableView.dequeueReusableCellWithIdentifier("NewExpenseTableCell") as NewExpenseTableCell

关于ios - UITableViewCells "shines"槽的可扩展内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27113526/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com