1
我有以下設置如何使用rxswift切換editButtonItem?
override func viewDidLoad() {
super.viewDidLoad()
navigationItem.leftBarButtonItem = editButtonItem
navigationItem.leftBarButtonItem?.rx.tap.subscribe(onNext: { [weak self] _ in
print("edit tapped")
if let isEditing = self?.tableView.isEditing {
self?.tableView.setEditing(!isEditing, animated: true)
}
}).disposed(by: disposeBag)
}
問題留給欄按鈕項目不切換自來水。 I.E左邊欄按鈕的文字應從編輯更改爲完成。
在onNext方法中更改按鈕標題也不起作用。
我建議不要訂閱editButton上的tap事件,因爲它會刪除它的默認編輯/完成切換行爲。我相信我找到了一個更好的選擇,通過調用:rx.methodInvoked(#selector(UIViewController.setEditing(_:animated :))))。此外,如果您使用的是UITableViewController,則在控制器上調用seEditing而不是TableView是完全可以接受的。 – nmdias