iOS开发技术iOS-swiftiOS程序猿

教你用swift轻松写一个自己的Alert弹出框库

2015-11-01  本文已影响7902人  smalldu

项目要用提示框,系统的提示框和app主题又不搭只能自己搞一个了,其实搞一个提示框库很简单,下面教大家怎么搞

代码已经上传github: https://github.com/smalldu/ZuberAlert

先上效果:


ZuberAlert

下面简单说下思路。

首先想清楚,我们的弹出框弹出的是一个什么东西 。弹出来得其实也是一个view ,放在一个半透明的view上。 我们这里用一个ViewController来管理 。所以我们的这个弹出框需要继承自UIViewController

下来要想清楚,我们这个view要添加在哪里 , 因为我们这个弹出框不管在哪个页面都可以弹出来 , 所以这边我选择放在UIWindow上 , 因为要显示在最前面,所以展示出来的时候要加上window.bringSubviewToFront(view)

这两个问题想清楚了以后 , 就可以做了,不就是画一个view上面放一个标题,以歌内容 几个按钮 。然后再布局就行了 。

这里强调一点就是,初始化的时候声明一个对自己的引用

var strongSelf:ZuberAlert?

然后在init方法执行strongSelf = self相当于retain了一下 强引用 。 不然 点击按钮的方法不会执行。

具体代码很简单就不详细说了,大家可以去github上下载源码 , 核心就一个swift 文件,不到200行代码。

当然你也可以不看代码直接使用。使用方式也很简单

在任何你想alert得地方 一句话搞定

ZuberAlert().showAlert("小提示", subTitle: "这是一个测试的小提示", buttonTitle: "取消", otherButtonTitle: "确认") { (OtherButton) -> Void in
            print("执行了确认")
        }

第一个按钮式用来取消的 ,内部写好了,第二个按钮的方法可以自定义 。内容写在闭包里就行了。非常方便好用。

这里只是一点小小的功能,抛砖引玉 ,大家可以随便自由发挥,做一个自己的弹出框。

上一篇下一篇

猜你喜欢

热点阅读