ios - 切换选择多个/单个 UITableView

标签 ios objective-c uitableview

我正在管理一个 UITableView,我正在尝试实现多选/单选

最初 myTableViewstoryboard 中设置了 Selection: Single Selection

当我在 myTableView 中选择一个 Row 时,信息会根据需要显示在另一个屏幕中。

作为选择选项,我有Select...Clear Selection

选择...将使选择:多重选择能够一次选择多行,并且

Clear Selection 将再次将 Selection 类型更改为:Single Selection

我试过:

[self.myTableView setAllowsMultipleSelection:YES];
[self.myTableView setAllowsMultipleSelectionDuringEditing:YES];

要将单选更改为多选,但不起作用

有没有办法以编程方式切换Selection属性?

最佳答案

使用 UITableViewallowsMultipleSelection 属性。 YES 用于多选模式,NO 用于单选模式。

参见:https://developer.apple.com/reference/uikit/uitableview?language=objc

所以像下面这样的东西可能就是你所需要的:

- (IBAction)toggleMultipleSelection:(id)sender {
    myTableView.allowsMultipleSelection = ! myTableView.allowsMultipleSelection;
}

(请注意,这仅适用于非编辑模式。编辑模式还有另一个类似的属性:allowsMultipleSelectionDuringEditing)

我不知道如果在已选择多个单元格时将 .allowsMultipleSelection 设置为 NO(即设置为单选模式)会发生什么情况。当您从多选模式更改为单选模式时,您可能需要自己手动清除选择。

关于ios - 切换选择多个/单个 UITableView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41051570/

相关文章:

iphone - 如何创建好看的UITableView分隔符?

ios - Swift、iboutlet 和自定义控件

ios - iTunesConnect - 如果我不提交 5. 8"display screenshots, will my 5.5"屏幕截图而不是显示给使用 iPhone X 的人?

ios - 如何使用 Stripe 付款

ios - 使用超链接在 IOS 中实现可本地化的字符串

objective-c - 在 Xcode 4 中是否有添加属性的快捷方式?

iphone - 为文本字段显示 uipicker 而不是键盘

objective-c - BOOL 类型指针的初始化警告

ios - 将数据从 TableViewCell 中的 IBAction 发送到 TableViewViewController

ios - 如何追加到数组的一部分? [[]]