• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >ios > iOS:请问如何在使用Masnory进行自动布局的情况下进行视图的圆角定制、

iOS:请问如何在使用Masnory进行自动布局的情况下进行视图的圆角定制、

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-05

佚名通过本文主要向大家介绍了iOS:请问如何在使用Masnory进行自动布局的情况下进行视图的圆角定制、等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: iOS:请问如何在使用Masnory进行自动布局的情况下进行视图的圆角定制、
描述:

1.我选择定制圆角的方法是,利用UIBezierPath对象拿到路径,然后赋值给CAShapeLayer对象,最后利用视图的图层mask属性进行圆角定制。

UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:button.bounds
                                               byRoundingCorners:UIRectCornerTopLeft | UIRectCornerTopRight
                                                     cornerRadii:CGSizeMake(12, 12)];
                                                     
CAShapeLayer *maskLayer = [[CAShapeLayer alloc] init];

maskLayer.frame = button.bounds;

maskLayer.path = maskPath.CGPath;

button.layer.mask = maskLayer;

2.使用Masnory进行布局,拿不到frame,所以上面的代码就因此无效。

3.我要定制的圆角是 UITableView 对象中的 heardView 和 cell,而且 两个视图的大小是自适应的,另外随着数据源的更新不同,这样的圆角的定制情况也会有所不同。那么这种情况下,使用 - setNeedsUpdateConstraints、- layoutIfNeeded 等方法拿到frame 再来进行圆角定制,也不现实。况且,性能上也不允许。

所以,我想问问,在这样的情况要求下,还可以使用什么方法来进行圆角定制。如果,你知晓的话,请在闲余之时回复一下,帮我解读解读。
谢谢啦、

解决方案1:

绘制圆角是必须要指定大小的,要么就要调用maskToBounds方法,不过大家都知道这个性能是最遭的。

我觉得还是应该获取到 frame 之后进行绘制,性能问题用其他方法去优化。(类似重写 drawRect 减少视图层级等,或者用instruments分析瓶颈到底在什么地方

极端情况直接使用 frame 硬算,不使用auto layout。


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

相关文章

  • 2017-06-05 ios求助~求助~相机拍照的照片怎么保存到自己创建的相册里?
  • 2017-06-05 问题背后的问题读后感iosloading问题
  • 2017-06-05 闪动问题——iOS——UICollectionItem
  • 2017-06-05 关于WKWebView加载完毕的代理方法
  • 2017-06-05 新浪微博开放平台以及腾讯开发平台的AppleID。
  • 2017-06-05 xcode8,添加appleid总是说错误,该怎么处理呢?
  • 2017-06-05 ios获取照片中的RGB颜色,通过算法划定需要取出的图形,生成新的照片;
  • 2017-06-05 mrc一个关于MRC环境下retainCount的问题
  • 2017-06-05 push一个ViewController时怎样隐藏自定义的tabbar?
  • 2017-06-05 中高端电脑配置xcode4中配置Three20开发环境

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 有什么办法可以去掉UIPickView中的3D动画效果?
    • iOS开发,一个label里有数字有汉字,怎样让数字的font比汉字大
    • 中高端电脑配置xcode4中配置Three20开发环境
    • ios开发中json数据解析模型属性description冲突问题。
    • php生成缩略图已经上传的图片能查看缩略图么
    • iOS远程推送ios推送服务平台哪个好点?
    • ios源iOS开源项目XSForm怎么运行?
    • imageview在模拟机上或者真机上显示不出来,在用debugviewhierarchy却可以看见怎么回事?
    • 项目未上线,qq分享第三方登录,让上传appStoreID怎么搞
    • iOSUIWebView加载本地图片中的baseURL是什么?如何获得?

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有