JHDropDownMenu
简介
通过扩展实现的UIView下拉菜单
示例
要运行示例项目,请克隆仓库,然后首先从项目目录中运行pod install
安装
JHDropDownMenu可通过CocoaPods使用。要安装它,只需在Podfile中添加以下行:
pod 'JHDropDownMenu'
使用方法
import JHDropDownMenu
现在您可以使用任何UIView的下拉菜单了(可能)
UIView().dropdown.set(items: [[...]])
您还可以使用option
来自定义下拉菜单
UIView().dropdown
.option(id: Selection.uiViewDropDown.rawValue)
.option(delegate: self)
.option(selectorSize: (width: 300, height: nil))
.option(marginVertical: 10)
.set(texts: texts, sectionTitles: sectionTitles)
选项
id: String?
用于在代理中检测选择器的键。默认值:nilisActiveTapGesture: Bool
有效的点击手势。默认值:truedismissOnSelected: Bool
选中后关闭。默认值:trueisOpen: Bool
打开状态。默认值:falseanimate: Bool
打开和关闭时动画。默认值:trueautomaticRelocation: Bool
打开时自动调整大小。默认值:truecontentMode: JHDropDownMenu.ContentMode
内容方向。情况有 'center'、'left'、'right'。默认值:centerselectorSize: (width: CGFloat?, height: CGFloat?)
列表(选择器)的大小。默认值:(view.frame.width, 200)marginVertical: CGFloat
与视图和列表(选择器)的垂直边距。默认值:0blindView: UIView?
打开下拉菜单时使用的盲视视图。委托: JHDropDownDelegate?
委托
-
func willChange(_ dropdown: JHDropDown, id: String?, view: UIView, isOpen: Bool)
-
func didChange(_ dropdown: JHDropDown, id: String?, view: UIView, isOpen: Bool)
-
func didSelectRowAt(_ dropdown: JHDropDown, id: String?, view: UIView, indexPath: IndexPath)
自定义
你可以通过下拉菜单访问 listView (UITableView)
UIView().dropdown.listView
随时欢迎提交PR。
作者
感谢
许可
JHDropDownMenu 适用于 MIT 许可证。有关更多信息,请参阅 LICENSE 文件。