代码之家  ›  专栏  ›  技术社区  ›  RickiG

直接调用uitableviews委托方法

  •  1
  • RickiG  · 技术社区  · 14 年前

    我正在寻找一种直接调用编辑方法的方法。

    - (void)tableView:(UITableView *)theTableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
    

    我有我所有的逻辑来设置被操纵的细胞的动画,从我的模型数组中移除 在这种方法中。当用户滑动、添加或重新排列时,它将被调用,但我想调用 它手动/直接作为后台线程更改我的模型。

    我构造了一个nsindexpath,如下所示:

    NSIndexPath *path = [NSIndexPath indexPathForRow:i inSection:1];
    

    我就是不知道怎么称呼这样的人:

    [self.tableview commitEditingStyle:UITableViewCellEditingStyleDelete forRowAtIndexPath:path];
    

    是否需要以其他方式访问此纯样式uitableview的方法?

    谢谢:

    2 回复  |  直到 14 年前
        1
  •  1
  •   Paul Lynch    14 年前

    我不明白为什么你不能调用那个方法,如果你只想让你的代码被执行的话。医生给了我们一个沉重的暗示

    - (void)setEditing:(BOOL)editing animated:(BOOL)animate
    

    无论如何都将具有调用该数据源方法的效果。将代码从该方法重构为另一个方法,并从数据源方法和代码中的其他地方调用它(如果您真的想这样做的话)会更有意义。

    如果您真的只想反映模型中的更改,请致电 [tableView reloadData] -这就是它的用途。

        2
  •  0
  •   schaechtele    14 年前

    我不确定,但如果你叫这个方法

    - (void)setEditing:(BOOL)editing animated:(BOOL)animate
    

    可能调用了committeditingstyle方法。