UITableView删除编辑动态加载控制Toolbar中的元素技巧-Swift

UITableView删除编辑动态加载控制Toolbar中的元素技巧

1  override func viewDidLoad() {
2     super.viewDidLoad()
3     updateToolbar(false)
4 }

添加元素

func updateToolbar(animated: Bool) {
    let enditItem = self.editButtonItem()
    let spaceBarItem = UIBarButtonItem(barButtonSystemItem:.FlexibleSpace, target: nil, action: nil)
    let folderItem = UIBarButtonItem(title: "新規フォルダ", style: .Plain, target: self, action: "addFolderAction:")

         doneButton?.enabled = !editing
     if editing {
        setToolbarItems([folderItem, spaceBarItem, enditItem], animated:animated)
    } else {
        setToolbarItems([spaceBarItem, enditItem], animated: animated)
    }
}        

获取编辑状态事件

override func setEditing(editing: Bool, animated: Bool) {
    super.setEditing(editing, animated: animated)
    tableView.setEditing(editing, animated: animated)
    updateToolbar(animated)
}

总结:

  在tableView滑动删除,编辑,或者使用系统的editButtonItem来进行操作的时候,动态添加删除toolbar中的元素有的时候是不可避免的。在设置的过程中很容易出现设置上或者是逻辑上的错误,将toolbar装载的方法独立出来,在需要更新的时候,对toolbar自身进行重新转载元素和布局,这样可以让逻辑更加清晰,而且对以后更好拓展。

posted @ 2015-07-16 00:07  VictorMaple  阅读(227)  评论(0)    收藏  举报