UIBarButtonItem错误编辑/完成动画

时间:2014-07-08 17:38:21

标签: ios swift edit uibarbuttonitem

我为自定义tableviewcontroller实现了一个编辑burron,而没有使用默认的编辑按钮。我在我的故事板中放了一个UIBarButton项目,并在我的自定义类中与IBOutlet链接。我已经实现了所有这些简单的机制来更改按钮标题:

class DetailTableViewController: UITableViewController {

var selectedMedicine: NSManagedObject?
var edit: Bool = false

@IBOutlet var editButton: UIBarButtonItem

@IBOutlet var nameTextField: UITextField
@IBOutlet var noteTextView: UITextView


@IBAction func enableEditing(sender: AnyObject) {
    if !edit
    {
        println("editing")
        self.edit = true
        self.navigationItem.rightBarButtonItem.title = "Done"
    }
    else
    {
        self.edit = false
        self.navigationItem.rightBarButtonItem.title = "Edit"
    }
}

标题发生了变化,但是从编辑到完成的过渡中有一些奇怪的东西,因为它有点生涩。 我找到了另一个同一个problem,但没有人回答他。

您可以查看此视频以查看欠款和坏动画,我的意思是video

1 个答案:

答案 0 :(得分:1)

您可以使用内置的UIViewController.editButtonItem和UIViewController.editing属性,而不是手动设置条形按钮标题和跟踪状态:

func viewWillAppear(animated:Bool) {
    self.navigationItem.rightBarButtonItem = self.editButtonItem()
}

@IBAction func enableEditing(sender: AnyObject) {
    self.editing = !self.editing
}