【问题标题】:UITableView Cell with CheckMarks带有复选标记的 UITableView 单元格
【发布时间】:2013-05-20 21:08:48
【问题描述】:

我有一个 iphone 项目,它有一个 UITableView,它是从 Core Data 填充的..

当一个单元格被选中时,用户被引导到一个新的视图控制器(见下面的代码行),它显示了关于该单元格条目的附加信息(来自核心数据)

[self presentModalViewController:noteViewController animated:YES]

我想要做的是能够在每个单元格的任一侧设置某种复选标记,以表示任务是否完成或不完整..

我已经读到我可以这样做:

UITableViewCellAccessoryCheckmark

但我不知道目前如何实施

didSelectRowAtIndexPath:

用于呈现模态视图控制器..

所以本质上我想知道是否有一种方法可以独立地将单元格的附件状态从复选标记更改为无(反之亦然)......从某种意义上说,如果实际的复选标记是触摸的......它会显示它。 ..如果再次触摸它,它会隐藏它..

任何帮助将不胜感激!

【问题讨论】:

    标签: iphone xcode uitableview


    【解决方案1】:

    您将需要从 Cell 演示文稿外部跟踪选定的行。这意味着,您的模型(您最初用于构建单元的模型)将需要跟踪某种布尔值。设置好后,将 accessoryType 设置为正确的类型。

    if ([[data objectAtIndex:indexPath.row] isSelected]) {
        cell.accessoryType = UITableViewCellAccessoryCheckmark;
    } else {
        cell.accessoryType = UITableViewCellAccessoryNone;
    }
    

    这将是您的一些逻辑:

    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
    

    【讨论】:

    • 感谢您的回复..我想我的问题有点令人困惑..如果选择了一个单元格,我所理解的表格将显示/删除复选标记..但我想要复选标记从某种意义上说是独立的,只有在选中复选标记时才会改变..有没有办法做到这一点?我将编辑我的原始帖子
    • 这是否意味着任何时候选择一个单元格,附件都会更改为?我不想让它每次都改变..只有在选择实际复选标记时才改变它..这可能吗??
    • 你能告诉我你的 if 条件中的“数据”是什么以及如何实现这个......谢谢
    【解决方案2】:
    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    
    UITableViewCell *selectedCell = [tableView cellForRowAtIndexPath:indexPath];
    
      if (selectedCell.accessoryType == UITableViewCellAccessoryNone)
      {
        selectedCell.accessoryType = UITableViewCellAccessoryCheckmark;
      }
      else 
      if (selectedCell.accessoryType == UITableViewCellAccessoryCheckmark)
      {
       selectedCell.accessoryType = UITableViewCellAccessoryNone;
      }
       //Do something
      }
    

    希望对你有帮助

    更新

    tutorial 将为您提供有关自定义表格视图单元格的基本信息。 另一个Reference

    我认为this 会给你解决方案。

    【讨论】:

    • 从 GUI 中读取状态并不是一个好主意:它违反了 MVC(模型-视图-控制器)架构的原则。
    • 请检查原始问题..我已经更新了更具体的信息...谢谢您的回答
    • 我想你说的是单元格中的自定义按钮
    • 谢谢你..这似乎是我想要的..你能不能指导我一些可以帮助我实现这个的东西?
    猜你喜欢
    • 1970-01-01
    • 2016-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-29
    • 1970-01-01
    • 2012-04-28
    相关资源
    最近更新 更多