UITableView setEditing为NO不会更改barButtonItem

Nic*_*ard 1 cocoa-touch objective-c uitableview uibarbuttonitem ios

我有一个UITableViewController内心UINavigationController.我正在设置rightBarButtonItem编辑按钮:

self.navigationItem.rightBarButtonItem = self.editButtonItem;
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

这很好用,在我打电话后tableView:commitEditingStyle:forRowAtIndexPath:我用编程方式改变了我tableView的编辑模式:

[self.tableView setEditing:NO animated:YES];
Run Code Online (Sandbox Code Playgroud)

这里奇怪的是,barButtonItem仍然似乎处于"编辑模式",因为它仍然像我在编辑模式时那样"完成".单击它会将按钮更改回"编辑",然后我必须单击"再次"以将其恢复为编辑模式.

在此输入图像描述

为什么不barButtonItem从编辑模式改变?

jrt*_*ton 10

该按钮控制视图控制器的编辑模式,将其传递到表视图.您正在将表视图直接从编辑模式中取出,而不是告诉视图控制器.尝试设置编辑模式self而不是self.tableView.