NXMActionSheet 0.2.1

NXMActionSheet 0.2.1

NXMActionSheetTrunk 维护。



  • 作者
  • nExmond

NXMActionSheet

CI Status Version License Platform Language

预览

demo

需求

使用 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文件。