UIViewController 的 editButtonItem 不会随着滑动删除而改变

发布于 2024-12-13 01:38:20 字数 503 浏览 1 评论 0原文

我使用 UIViewController 的 editButtonItem 来控制表格视图上的编辑模式。

问题是,在大多数应用程序中,当您滑动一行以删除元素时,该编辑按钮会更改为“完成”状态。这样用户就可以点击“完成”来停止删除元素。

滑动删除情况下的“完成”按钮

在此处输入图像描述

没有在我的应用程序中执行此操作

在此处输入图像描述

我想我可以更改编辑按钮的标题和样式在tableview:editingStyleForRowAtIndexPath:,但是 UIViewControllereditButtonItem 的要点不是自动的吗?

谢谢。

I use UIViewController's editButtonItem to control edit mode on my table view.

The problem is that in most apps, when you swipe a row to delete the element, that edit button changes to "Done" state. That way the user can tap "Done" to stop deleting elements.

Done button in a swipe to delete situation

enter image description here

It doesn't do this in my app

enter image description here

I guess I could change the title and style of the edit button in tableview:editingStyleForRowAtIndexPath:, but isn't the point of UIViewController's editButtonItem to be automatic?

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

月朦胧 2024-12-20 01:38:20

实现这两个委托方法为我解决了这个问题。
将视图控制器的 .editing 属性设置为 YES,然后再设置回 NO。

- (void)tableView:(UITableView *)tableView willBeginEditingRowAtIndexPath:(NSIndexPath *)indexPath
{
    self.editing = YES;
}

- (void)tableView:(UITableView *)tableView didEndEditingRowAtIndexPath:(NSIndexPath *)indexPath
{
    self.editing = NO;
}

Implementing these two delegate methods solved it for me.
Setting the .editing property of the view controller to YES and back to NO.

- (void)tableView:(UITableView *)tableView willBeginEditingRowAtIndexPath:(NSIndexPath *)indexPath
{
    self.editing = YES;
}

- (void)tableView:(UITableView *)tableView didEndEditingRowAtIndexPath:(NSIndexPath *)indexPath
{
    self.editing = NO;
}
终止放荡 2024-12-20 01:38:20

仅当 UIViewController.editing 属性为 YES 时才会自动执行。当您仅编辑单行时,视图控制器本身不处于编辑模式,因此它不会更改按钮。

It's only automatic when the UIViewController's .editing property is YES. When you're only editing a single row, the view controller itself is not in editing mode, so it doesn't change the button.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文