美文网首页iOS-swiftiOS分享的demo程序员
iOS 底部弹框选择器(类似微信)

iOS 底部弹框选择器(类似微信)

作者: 張無忌 | 来源:发表于2017-04-24 17:05 被阅读2532次

    介绍

    以往都是使用别人造好的轮子,有时间了还是想深入学习一下。
    自己动手封装了一个 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,请联系我。如果对你有帮助,点个 吧!谢谢!

    相关文章

      网友评论

      • 杨淳引:以你这个控件为基础,快速做出了一个底部选择框,赞!👍
      • MaShuai丨:感谢分享.

      本文标题:iOS 底部弹框选择器(类似微信)

      本文链接:https://www.haomeiwen.com/subject/ihupzttx.html