iOS10 + Swift3.0 + Xcode8.0 热门标签自动换行(Swift版)

本文参考    http://www.code4app.com/thread-7369-1-1.html

效果图


iOS10 + Swift3.0 + Xcode8.0 热门标签自动换行(Swift版)_第1张图片
效果图

扯个淡

热门标签自动换行,这个是一个很多App的需求,闲来无事,逛code4app,发现上面的一个小demo,因为最近再自学swift,心中由生了一个想法,将这个demo转换为swift版本,并且封装一下,可供以后项目中使用,但是在转换中发现有很多地方可以优化,可以减少很多的代码冗余,所以想和各大简友分享一下

主要逻辑

1、判断是否超出规定范围的宽度(换行,清空数据 处理)

2、判断是否超出规定范围的高度(return操作)

具体代码

工具类中的对应属性


iOS10 + Swift3.0 + Xcode8.0 热门标签自动换行(Swift版)_第2张图片
对应属性

工具类中的方法


传入delegate(用作点击事件回调),dataList(数据源),后两者为对应的颜色

工具类中btn的属性赋值


iOS10 + Swift3.0 + Xcode8.0 热门标签自动换行(Swift版)_第3张图片
btn初始化

核心代码!!!


记录每次传入的数据源对应的string长度

逻辑判断


iOS10 + Swift3.0 + Xcode8.0 热门标签自动换行(Swift版)_第4张图片
逻辑判断语句

再对应VC中的具体调用


iOS10 + Swift3.0 + Xcode8.0 热门标签自动换行(Swift版)_第5张图片
调用方式

小尾巴

老逻辑,可以去文章最上面的链接中去看,也可以去我的github中看一下老逻辑,效果是一样

本人第一次写,排版。。。勿喷。。如果喜欢可以点击喜欢~如果有疑问,可以在下方留言,第一时间回复

文章demo地址   github地址

你可能感兴趣的:(iOS10 + Swift3.0 + Xcode8.0 热门标签自动换行(Swift版))