让广告弹框变得简单(Swift3)!

前段时间由于公司项目需要加入广告弹框,上网找了一圈没有找到什么比较好的,最后用qiankai同学这个弹框改的这个
项目里的代码真的很垃圾:

判断广告时间:
屏幕快照 2016-10-21 下午3.00.31.png
判断下载广告图片和时候弹出广告:
屏幕快照 2016-10-21 下午3.02.30.png
获取广告数据:

屏幕快照 2016-10-21 下午3.04.27.png

啊。。。看着真的不爽,这TM什么东西!也怪自己当时水平有限!
Swift是什么?一门精致,简单,而不缺少思想的语言!
能把代码写成这个样子,真是很惭愧啊,然后就各种学习,什么函数式编程,面向接口编程烧脑体操,函数式Swift
突然有一天,哈哈,我看到了这篇关于转场的文章,突然脑子里就想到了,广告弹框,这可好像可以做广告弹框哦!但是当时并没有做,只是把代码下载下来看了一遍,然后就放在那里了。

几个转场库

1、https://github.com/applidium/ADTransitionController
2、https://github.com/DianQK/TransitionTreasury
3、https://github.com/ColinEberhardt/VCTransitionsLibrary
最近,公司没有什么事情,上午学习函数式Swift,下午就上github trending搜罗一些库。前天突然有看到了那段恶心的代码,随后又想起了那篇转场的文章,那就写一个吧!这样的库应该大家用得还是比较频繁的,毕竟广告能赚钱!
就拿着那个转场的demo改了一下,有个初步模样,然后新加了几种效果(其实就是在原来的基础上修改而已),今天下午差不多搞好了,但是没有做cocoapods 和Carthage,准备之后搞!

效果

bottomToTop.gif
overlayHorizontal.gif

代码

屏幕快照 2016-10-21 下午3.48.36.png

是不是相比较之前优雅很多,废话也不多说,也没有什么特别的难点,就是用人家的demo修改出来的。直接说说遇到的坑!

遇到的坑

因为广告弹框,其实有点像系统自带的alert,用转场做的,只是重写了转场动画而已。当转场的controller的view上什么也没有加的时候,之前的动画完全没有问题的,但是当加上需要显示内容的一个bannerView后,view的效果就被banner给挡住了,因为这段代码

override public func viewDidLoad() {
        super.viewDidLoad()
        view.backgroundColor = UIColor.white
        bannerView.set(images: images)
        bannerView.handleBack = selectedHandel
        bannerView.showPageControl = isShowPageControl
        view.addSubview(bannerView)
    }

是在controller,他是先于这个代理的

UIViewControllerAnimatedTransitioning

所以当bannerView加上去之后就会挡住在上面那个代理里面对view做的动画,试了几种,调透明,延时动画什么的,效果都不太好!又想起来之前做过的collection的cell移动,其实就是长按后,将按住的cell生成一张图片,障眼法而已。似乎用到这里也是可以的哦!果断把代码贴过来

func getSnap(targetView: UIView) -> UIImageView {
        UIGraphicsBeginImageContextWithOptions(targetView.bounds.size, false, 0.0)
        targetView.layer.render(in: UIGraphicsGetCurrentContext()!)
        let image = UIGraphicsGetImageFromCurrentImageContext()
        UIGraphicsEndImageContext()
        return UIImageView(image: image)
    }

记住要把view调透明,依然是在上面那个代理里面做,里面有fromView和toView,这两个是相对的,看看代码,相信不难理解!
然后就是说上面截图的方法其实是在关闭广告的时候用到的,因为刚打开的时候,图片是传进来的,可以直接拿到!就是这么多,没有多少难得!
但我发现

bouds frame的一个区别

之前我只知道bounds的origin总是为CGPoint.zero,frame是相对他的,还有横屏的时候,需要改变bouds,但是做第二个动画的时候,我发现,你去改变bounds.size的时候,他是往中间变化的,frame.size是靠x=0和y=0的方向变化的

项目地址

ADController
我有什么说错的,或者没说明白的请留意,我会尽快改正

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 200,302评论 5 470
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,232评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 147,337评论 0 332
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,977评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,920评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,194评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,638评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,319评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,455评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,379评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,426评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,106评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,696评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,786评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,996评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,467评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,043评论 2 341

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 11,982评论 4 60
  • 2017.11.25桂男分享连接真我指导灵与天使: 一.奇迹: 1.我今天非常开心,一早经销商就帮我打款,虽然是周...
    林桂男阅读 204评论 0 0
  • 自我09丨肛欲期:金钱态度之源 有感 老师今天的解读让我想起了那句经典的话语:视钱财如粪土。从此对它又有了新的解读...
    云熙聊亲密关系阅读 544评论 0 2
  • 星期日/多云转雨 小长假结束咯,回到学校开始学习啦! 加油呀! 不知道自己最近怎么回事,明明心情看起来还不错,可是...
    酒久里个丸子阅读 98评论 0 0
  • 嘀嗒,嘀嗒,嘀嗒 这墙上的长着三条腿的怪物 在和我们赛跑 我们快时,它不紧不慢 我们慢时,它不紧不慢 我亲眼看到父...
    叮咚的你阅读 525评论 3 1