介绍
以往都是使用别人造好的轮子,有时间了还是想深入学习一下。
自己动手封装了一个 iOS 底部弹框选择器,类似微信的弹框选择器。最终效果:
效果预览
安装
项目已经上传到了 GitHub,并且支持 Pod。
pod 'BottomSelectView'
使用
通过 Pods 安装到项目中之后,在需要引入的地方引入模块:
import BottomSelectView
// 选择框的选项,颜色可以传 nil,则显示默认的颜色
let option1 = SelectViewInfo(title: "选择1", color: UIColor.green)
let option2 = SelectViewInfo(title: "选择2", color: UIColor.blue)
let option3 = SelectViewInfo(title: "选择3", color: UIColor.brown)
let cancel = SelectViewInfo(title: "取消", color: UIColor.cyan)
// 通过类方法显示弹框,并监听用户选择
BottomSelectView.show(title: "请选择聊天方式?", options: [option1, option2, option3], cancelTitle: cancel, selectCallBack: { index in
print(index)
})
SelectViewInfo
是一个结构体类型,用来设置选项的文字和颜色,颜色如果传nil
,会显示默认的灰色,如:SelectViewInfo(title: "选择1", color: nil)
。
取消按钮
的文字和颜色,也可以自己定制,如果传nil
会显示默认的样式和文字。
通过selectCallBack
闭包,可以监听到用户所选择的是哪一项。
除此之外,还可以监听用户对取消按钮的点击,使用以下方法:
BottomSelectView.show(title: "请选择聊天方式?", options: [option1, option2, option3], cancelTitle: nil, selectCallBack: { index in
print(index)
}) {
print("用户选择了取消")
}
如果你有更好的想法,或者项目有 Bug,请联系我。如果对你有帮助,点个 吧!谢谢!
网友评论