UIView设置边框(整体设置和分开设置)
来源:互联网 发布:北京行知小学百度百科 编辑:程序博客网 时间:2024/06/05 15:12
在开发中为UIView设置边框是常常用到的功能,如果要为UIView四下都设置边框,最简单的方法是使用CALayer的border属性:
+(void)setViewBorder:(UIView *)view color:(UIColor *)color radius:(float)radius border:(float)border{ //设置layer CALayer *layer=[view layer]; //是否设置边框以及是否可见 [layer setMasksToBounds:YES]; //设置边框圆角的弧度 [layer setCornerRadius:radius]; //设置边框线的宽 [layer setBorderWidth:border]; //设置边框线的颜色 [layer setBorderColor:[color CGColor]];}
但是在实际中往往需要灵活的设置某几条或者某一条边框,那么该怎么做呢?下面就是提供的方法:
typedef NS_ENUM(NSInteger, UIViewBorderLineType) { UIViewBorderLineTypeTop, UIViewBorderLineTypeRight, UIViewBorderLineTypeBottom, UIViewBorderLineTypeLeft,};
+(void)setViewBorder:(UIView *)view color:(UIColor *)color border:(float)border type:(UIViewBorderLineType)borderLineType{ CALayer *lineLayer = [CALayer layer]; lineLayer.backgroundColor = color.CGColor; switch (borderLineType) { case UIViewBorderLineTypeTop:{ lineLayer.frame = CGRectMake(0, 0, view.frame.size.width, border); break; } case UIViewBorderLineTypeRight:{ lineLayer.frame = CGRectMake(view.frame.size.width, 0, border, view.frame.size.height); break; } case UIViewBorderLineTypeBottom:{ lineLayer.frame = CGRectMake(0, view.frame.size.height, view.frame.size.width,border); break; } case UIViewBorderLineTypeLeft:{ lineLayer.frame = CGRectMake(0, 0, border, view.frame.size.height); break; } default:{ lineLayer.frame = CGRectMake(0, 0, view.frame.size.width-42, border); break; } } [view.layer addSublayer:lineLayer];}
本质上也是实用UIView的layer,然后为其添加子layer。
阅读全文
0 0
- UIView设置边框(整体设置和分开设置)
- UIView设置边框和阴影
- UIView边框设置
- UIView设置圆角、边框和阴影
- iOS 设置UIView的边框和阴影
- UIView设置圆角、边框和阴影
- UIView 设置圆角和边框备忘
- UIView设置圆角、边框和阴影
- UIView设置圆角、边框和阴影
- UIView边框,圆角 透明 设置
- 设置UIView阴影shadow 边框 边框颜色
- 设置UIView阴影shadow 边框 边框颜色
- 设置UIImage或UIView圆角 、设置UIView边框的代码
- 设置UIImage或UIView圆角 、设置UIView边框的代码
- iPhone开发:给UIView设置边框和阴影
- iOS UIView(UIButton)设置圆角和边框
- UIView在Xib中的边框设置
- UIVIEW 设置圆角 +边框阴影
- javascript本地对象String对象方法;
- Windows 检测dll是32/64位?
- 流程控制(二)
- 数据库(fmdb)
- Java动态代理--jdk代理
- UIView设置边框(整体设置和分开设置)
- const vector<int> vec(10)
- python的基础语法
- Toast源码解析
- Redis之配置文件:单位,包含,通用
- 广播
- Java设计模式-适配器模式
- 基于MQTT的推送,连接服务器问题
- 621. Task Scheduler--任务调度