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

为什么我的UITableView在初始化时没有以editing=YES模式启动?

  •  2
  • unsorted  · 技术社区  · 14 年前

    我有一个UITableViewController子类。我准备好了 self.editing = YES 在比赛结束时 viewDidLoad

    然后,我在导航项中添加了一个编辑按钮:

    self.navigationItem.rightBarButtonItem = self.editButtonItem;
    

    所以,我的问题是:为什么表格单元格在第一次显示时不能正确显示?我试过搬家 行到代码中的其他位置,如 init 函数或 viewWillAppear 视图加载 cellForRowAtIndexPath ,正如人们所料。

    • 是的,我正在吃 editingStyleForRowAtIndexPath 返回 UITableViewCellEditingStyleDelete . 但是通过调试,我已经验证了在第一次加载之后甚至没有调用该函数(在我切换编辑模式两次后,它会被调用。)
    2 回复  |  直到 14 年前
        1
  •  2
  •   unsorted    14 年前

    哦,加进去 viewDidAppear (或者更好: viewWillAppear

    我觉得很傻。我发誓我以为我查过了。

    故事的寓意:过早设置editing属性会使页面元素无法在编辑模式下显示(这看起来像是虫子吗?)

        2
  •  1
  •   willcodejavaforfood    14 年前

    尝试使用

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