【问题标题】:Table view doesn't retain the selected values after scrolling滚动后表格视图不保留所选值
【发布时间】:2015-04-09 06:03:33
【问题描述】:

在我的应用程序中,为了选择首选项,我创建了一个带有开关的自定义单元格并将其加载到表格中。有 21 个类别可供选择。我的问题是当我打开第一部分的开关并向下滚动并返回时,开关关闭。我认为问题在于重用标识符。但我让它为零,但没有运气。我需要将选定的首选项保存在数据库中并显示它。请帮助我保持所选值不变。提前致谢。

【问题讨论】:

  • 没有看到代码没有人可以提供帮助。如果您有代码逻辑问题以及您希望如何以及在何处保留内容,请发布一些代码

标签: ios iphone xcode uitableview


【解决方案1】:

您需要将开关的值存储在一个数组中,以便在下次调用 -cellForRowAtIndexPath: 时设置它们。单元格会被回收,因此如果您不保存它们的值,屏幕外的单元格将会丢失其内容。

【讨论】:

    【解决方案2】:

    在 cellForRowAtIndexPath 方法中,滚动时重用标识符调用并刷新所有单元格。

    尝试像这样比较(我正在像算法一样编写,在 cellForRowAtIndexPath 方法中实现它)。

    if( 单元格处于开启状态) [开关 setSender:on] 别的 [切换 setSender:off];

    【讨论】:

      猜你喜欢
      • 2013-12-30
      • 2015-02-25
      • 2015-09-11
      • 1970-01-01
      • 2011-01-30
      • 2011-12-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多