简谈Masnory的功能和使用
2016-07-18 10:01
309 查看
最近在一个项目中使用了Masonry框架,其强大的自动布局的功能,简直爽爆了。再次强烈推荐在实际项目中使用。相信有很多和我一样的iOS开发者,在最初设定控件位置的时候多半用的是iOS框架自带的frame,控件的大小也是通过CGRect写死的。虽然苹果官方在iOS5后就已经推出了AutoLayout自动布局功能,但是小白的我用了很长时间不会用,现在还不能很熟练的使用,就直接弃疗了。在论坛上偶然发现Masonry这个框架能实现自动布局,代码看起来不是很复杂,就试了一下,用完以后,就再也不想用其他的布局框架了。下面简单的写一下如何使用的。
先看效果:
![](https://img-blog.csdn.net/20160718101700561)
代码如下:
![](https://img-blog.csdn.net/20160718102032832)
发现了没,以后再也不用写initWithFrame了,再也不用担心图片大小写死了。只用了一句mas_makeConstraints就解决了所有问题,这里有个前提:控件在使用Masnory约束的时候必须要先添加到父View上,即 [self.viewaddSubview:button];然后再写约束,否则会报错。
如果要左边空出20px怎么写呢?
![](https://img-blog.csdn.net/20160718102656874)
代码如下:
![](https://img-blog.csdn.net/20160718102805328)
只添加一句话就实现了(iphone6上10pt是20px,开发中使用的单位是pt),开发中大多数使用边距控制控件的位置,这样可以适配不同的iphone设备,当然也可以通过Masonry写死,这是不建议的。
图片居中:
![](https://img-blog.csdn.net/20160718103204145)
代码:
![](https://img-blog.csdn.net/20160718103322147)
相信看了上面的代码演示,小白的你肯定有点心动了吧,赶紧来体验一下其强大的功能吧。
当然Masonry的使用方法还用很多,我也在学习中,后期有时间将研究一下其实现的过程。
先看效果:
代码如下:
发现了没,以后再也不用写initWithFrame了,再也不用担心图片大小写死了。只用了一句mas_makeConstraints就解决了所有问题,这里有个前提:控件在使用Masnory约束的时候必须要先添加到父View上,即 [self.viewaddSubview:button];然后再写约束,否则会报错。
如果要左边空出20px怎么写呢?
代码如下:
只添加一句话就实现了(iphone6上10pt是20px,开发中使用的单位是pt),开发中大多数使用边距控制控件的位置,这样可以适配不同的iphone设备,当然也可以通过Masonry写死,这是不建议的。
图片居中:
代码:
相信看了上面的代码演示,小白的你肯定有点心动了吧,赶紧来体验一下其强大的功能吧。
当然Masonry的使用方法还用很多,我也在学习中,后期有时间将研究一下其实现的过程。
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- Bootstrap选项卡与Masonry插件的完美结合
- jQuery.lazyload+masonry改良图片瀑布流代码
- 讲解iOS开发中基本的定位功能实现
- iOS中定位当前位置坐标及转换为火星坐标的方法
- js判断客户端是iOS还是Android等移动终端的方法
- iOS应用开发中AFNetworking库的常用HTTP操作方法小结
- iOS应用中UISearchDisplayController搜索效果的用法
- iOS App开发中的UISegmentedControl分段组件用法总结
- IOS开发环境windows化攻略
- iOS应用中UITableView左滑自定义选项及批量删除的实现
- iOS中UIAlertView警告框组件的使用教程
- 浅析iOS应用开发中线程间的通信与线程安全问题
- iOS中的UIKeyboard键盘视图使用方法小结