【问题标题】:Set accessoryType and save it设置附件类型并保存
【发布时间】:2015-05-14 13:21:16
【问题描述】:

我想在 UITableViewCell 中显示一个附件类型,其中按下了 UITableViewRowActionButton。如果应用重新启动,还应显示附件类型。所以我想我必须存储一些东西。有人知道如何做到这一点吗?

【问题讨论】:

  • 我总是使用“NSUserDefaults.standardUserDefaults”来保存单元格的状态。在“cellForRowAtIndexPath”中,只需检查键是否设置为 true 或 false,仅此而已。请记住,如果您重复使用单元格,这将不起作用。在那种情况下,解决方案有点棘手,但我猜你是在要求一个单元格,对吧?
  • 感谢您的回答。如何处理 UITableViewCell 的删除?
  • 使用 tableView 函数“editActionsForRowAtIndexPath” 我建议你在 Stackoverflow 上搜索如何实现它......有很多问题和答案。
  • 我知道如何删除 UITableViewCell 但如何处理 NSUserDefaults?我不需要删除/将布尔值设置为 false 吗?
  • 您可以测试该键是否为“nil”。否则你可以像你说的那样做,只需使用 NSUserDefaults 中的“boolForKey”并将其设置为 true 或 false。有很多方法可以实现您想做的事情。

标签: uitableview swift xcode6 uitableviewrowaction


【解决方案1】:

您需要了解表格视图的工作原理。他们有一个数据源,可以根据数据模型的保存状态配置单元格。

你应该做的是设置你的数据模型来保存用户按下你的单元格按钮的事实。将该信息保存到文件中,并在应用启动时加载。

设置您的 cellForRowAtIndexPath 以查看为该行保存的信息,并在您保存的信息显示用户已点击您的行操作按钮的那些单元格中显示附件。

在您的行操作按钮的 IBAction 方法中,您可以简单地设置“用户已单击该行的行操作按钮”标志并告诉表视图重新加载该 indexPath。然后,您的 cellForRowAtIndexPath 将使用附件重新加载单元格。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-05-12
    • 2019-04-26
    • 1970-01-01
    • 2012-06-12
    • 1970-01-01
    • 2010-12-17
    • 1970-01-01
    相关资源
    最近更新 更多