NXMActionSheet
预览
需求
使用 Swift 4 编写并在 iOS 9 上进行测试。
安装
NXMActionSheet 通过 CocoaPods 提供。要安装它,只需将以下行添加到 Podfile
pod 'NXMActionSheet'
用法
import NXMActionSheet
基本
链式调用
//add items
add(imageViewData)
.add(datas: labelViewDataList)
.insert(twoButtonData, at: 0)
默认视图使展示变得简单
NXMActionSheet()
.add(.init(.image(/*image*/))))
.add(.init(.activityIndicator(.gray)))
.add(.init(.slider(0.5, nil)))
.add(.init(.label("Label")))
.add(.init(.button("Button", UIColor.brown, nil), withTouchClose: true))
.show()
继承 & 自定义
在使用继承时,请确保包含以下函数
class CustomActionSheet : NXMActionSheet {
convenience init (withType:NXMActionSheetAnimationType = .slide) {
self.init(frame: .zero)
}
override init(frame: CGRect) {
super.init(frame: frame)
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
}
创建相同名称的 .xib 和 .swift 文件并如下使用
//ImageView
let customImageView = CustomImageView.loadView()
customImageView.imageView.image = /*image*/
let imageViewData = NXMActionSheetData(.custom(imageView))
...
add(imageViewData)
请参照示例了解详情
代理
//require
func didSelectActionItem(_ actionSheet:NXMActionSheet, withData:NXMActionSheetData)
//optional
func actionSheetWillShow()
func actionSheetDidShow()
func actionSheetWillHide()
func actionSheetDidHide()
func actionSheetWillUpdate()
func actionSheetDidUpdate()
!!
如果UITableView中的内容高度超过UIScreen高度,将启用滚动。但是,如果在更新时设置滚动位置,过渡可能不会流畅。
示例
要运行示例项目,请先克隆仓库,然后从示例目录运行pod install
。
作者
nExmond, [email protected]
许可协议
NXMActionSheet遵循MIT许可协议。更多信息请参阅LICENSE文件。