我为自定义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
答案 0 :(得分:1)
您可以使用内置的UIViewController.editButtonItem和UIViewController.editing属性,而不是手动设置条形按钮标题和跟踪状态:
func viewWillAppear(animated:Bool) {
self.navigationItem.rightBarButtonItem = self.editButtonItem()
}
@IBAction func enableEditing(sender: AnyObject) {
self.editing = !self.editing
}