| 测试已测试 | ✗ |
| 语言语言 | SwiftSwift |
| 许可 | MIT |
| 发布时间最新发布 | 2017年12月 |
| SwiftSwift版本 | 3.0 |
| SPM支持SPM | ✗ |
由kunass2维护。
SelectableView通过CocoaPods提供。要安装它,只需将以下行添加到您的Podfile中
pod "SelectableView"如果在您的Podfile中使用了use_framework,只需这样做
import SelectableView
当需要使用它时,对每个文件都要执行。
您还可以使用
@import SelectableView;
在强类型bridging header文件中,以避免为每个需要的文件导入框架。
只需将SingleSelectableView、MultiSelectableView或SearchSelectableView作为您UIView的子类添加到Interface Builder中。
@IBOutlets@IBOutlet open var switchButton: UIButton?
@IBOutlet open var contentOptionsHeightConstraint: NSLayoutConstraint?
@IBOutlet open var contentOptionsView: UIView?
@IBOutlet open var selectedOptionLabel: UILabel? //only SingleSelectableView
@IBOutlet open var verticalTokenView: VerticalTokenView? //only MultiSelectableView
@IBOutlet open var horizontalTokenView: HorizontalTokenView? //only MultiSelectableView
@IBOutlet open var tokenViewHeightConstraint: NSLayoutConstraint? //only MultiSelectableView, useful within UIScrollView
@IBOutlet open var textField: UITextField! //only SearchSelectableViewviewDidLoad()中分配委托singleSelectableView.delegate = self
multiSelectableView.delegate = self
searchSelectableView.delegate = selfUIViewController遵守以下声明的SelectableViewDelegate@objc public protocol SelectableViewDelegate {
@objc optional func multiSelectableView(_ view: MultiSelectableView, tokenViewFor option: SelectableOption) -> UIView
@objc optional func singleSelectableView(_ view: SingleSelectableView, didSelect option: SelectableOption)
@objc optional func multiSelectableView(_ view: MultiSelectableView, didSelect option: SelectableOption)
@objc optional func searchSelectableView(_ view: SearchSelectableView, didSelect option: SelectableOption)
@objc optional func selectableViewDidToggleOptions(with button: UIButton, expanded: Bool)
}SelectableView设置以下属性 var fontForOption = UIFont.systemFont(ofSize: 16)
var fontForPlaceholderText = UIFont.systemFont(ofSize: 14)
@IBInspectable open var leftPaddingForPlaceholderText = 0
@IBInspectable open var leftPaddingForOption = 20
@IBInspectable open var heightForOption = 40
@IBInspectable open var titleColorForSelectedOption = UIColor.green
@IBInspectable open var titleColorForOption = UIColor.black
@IBInspectable open var textColorForPlaceholderText = UIColor.gray
@IBInspectable open var tintColorForSelectedOption = UIColor.blue
@IBInspectable open var identifier = ""
@IBInspectable open var tableViewAccessibilityIdentifier = ""
@IBInspectable open var maxNumberOfRows = 6
@IBInspectable open var placeholder = ""open func hideOptions() //collapse selectable options
open func select(option: SelectableOption) //only MultiSelectableView
open func deselect(option: SelectableOption) //only MultiSelectableViewopen var options: [SelectableOption]? //current list of options able to select it
open var selectedOption: SelectableOption? //SingleSelectableView, SearchSelectableView
open var selectedOptions = [SelectableOption]() //MultiSelectableViewSelectableOption定义如下open class SelectableOption: NSObject {
open var index: Int
open var identifier: String
open var title: String
open var userInfo: [AnyHashable: Any]?
open var descendantOptions = [SelectableOption]()
public init(index: Int, title: String, identifier: String, userInfo: [AnyHashable: Any]? = nil) {
self.index = index
self.identifier = identifier
self.title = title
self.userInfo = userInfo
}
}Bartłomiej Semańczyk,[email protected]
SelectableView 可在 MIT 许可证下使用。更多详细信息请查看 LICENSE 文件。