一个简单而实用的管理对象选择的辅助类,通常用于表格视图。
这个类仅是一个封装特定类型对象的 Set
,其主要目标是统一代码在出现选择模式时的编写方式,防止开发者必须反复编写为执行此类简单任务的样板和易出错代码。
Hashable
协议。这是一个简单的字符串使用示例。
let selectionManager = SelectionManager()<String>
selectionManager.select("A")
selectionManager.isSelected("A") // true
selectionManager.deselect("A")
selectionManager.isSelected("A") // false
selectionManager.toggle("B")
selectionManager.isSelected("B") // true
selectionManager.toggle("B")
selectionManager.isSelected("B") // false
selectionManager.select("A")
selectionManager.select("B")
selectionManager.select("C")
print(selectionManager.selectedObjects) // Set containing "A", "B" and "C"
您可以通过下载源代码来找到一个更有用的示例,其中包含一个使用 tableView
的示例项目,这是选择模式可能出现的典型场景。
您可以直接克隆仓库并将 SelectionManager
文件夹复制到您的项目中,或者通过 CocoaPods 安装它以保持更新。
关于使用此库的任何 问题 或 一般评论,请使用我们的公共 hipchat 房间。
如果您在此库中使用过程中发现任何 错误 或 问题,请在此仓库中 提交一个问题(或发送拉取请求)。
您还可以在我们的开源项目中查看所有我们的项目,请访问 inaka.github.io