在 iPhone 中的单元格上获取选中和未选中按钮问题
Posted
技术标签:
【中文标题】在 iPhone 中的单元格上获取选中和未选中按钮问题【英文标题】:Getting Selected and unselected button problem on cell in iPhone 【发布时间】:2011-09-13 05:32:41 【问题描述】:大家好,我的应用程序遇到了一个奇怪的问题。我的表格视图有一个自定义单元格,我的单元格上有一个按钮。我必须在该按钮上添加收藏夹和取消收藏功能,因此如果点击该按钮,它将使该单元格上的项目成为收藏夹,并且按钮将处于选中状态,如果用户再次点击它,它将被取消选中。就像复选框一样。 问题是当我选择一个按钮时,它也是第 5 个按钮。例如,如果我选择第 3 个索引上的按钮,那么它也会选择第 8 个索引上的按钮。
任何机构都面临这个问题?任何人都可以帮助我吗?
【问题讨论】:
这是重复的。 . . ***.com/questions/4744710/… 查看上面的链接。 . . 【参考方案1】:问题是因为您正在重复使用您的单元格。因此,当您选择索引 0 处的单元格时,如果有 4 个可见单元格,那么当您向下滚动索引为 5 的单元格时,将重用索引 0 处的单元格,它也会被选中。
要解决该问题,您应该始终在 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
中配置单元格并将所有可以更改或单独用于不同单元格的属性重置为默认值。
【讨论】:
【参考方案2】:我想这是因为 UITableViewCells 被缓存了。这就是 -dequeueReusableCellWithIdentifier 所做的。在“cellForRowAtIndexPath”函数中,添加一些逻辑来设置按钮的状态,具体取决于该行的对象是否被收藏。
【讨论】:
以上是关于在 iPhone 中的单元格上获取选中和未选中按钮问题的主要内容,如果未能解决你的问题,请参考以下文章
将收藏夹功能添加到 iPhone App iphone sdk
ios UITableview 单个单元格上的多个选择选项?