UI控件切圆角

1.

xib下设置View圆角   

这个很简单, 只需要重写  - (void)drawRect:(CGRect)rect 方法就行了
1
2
3
4
5
6
- ( void )drawRect:(CGRect)rect
{      [ super drawRect:rect];
      self .imgView.layer.cornerRadius = 20;
      self .imgView.clipsToBounds = YES ;
}

 

2.在xib或storyboard中为UIView添加边框或圆角

先看图:

view的圆角半径和边框宽度可以按上图设置,但是默认情况下边框的颜色是不能设置的。

链接http://stackoverflow.com/a/17993890里给了一份category代码来增加设置边框颜色

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
CALayer+XibConfiguration.h:
#import <QuartzCore/QuartzCore.h>
#import <UIKit/UIKit.h>
@interface CALayer(XibConfiguration)
// This assigns a CGColor to borderColor.
@property(nonatomic, assign) UIColor* borderUIColor;
@end
 
CALayer+XibConfiguration.m:
#import "CALayer+XibConfiguration.h"
@implementation CALayer(XibConfiguration)
-( void )setBorderUIColor:(UIColor*)color
{
     self.borderColor = color.CGColor;
}
-(UIColor*)borderUIColor
{
     return  [UIColor colorWithCGColor:self.borderColor];
}
@end

然后按这个图就可以设置边框颜色了:

经验证,可以成功。

还有一个另外的方案,见这里,不过用的是swift代码。

还可以利用layer.cornerRadius实现一个圆形的view,将layer.cornerRadius设为一个正方形view宽度的一半,就可以显示为圆形。经测试,还需要设置layer.masksToBounds为YES才行,不行的话测试一下将layer.shouldRasterize设置为YES是否可以。参考了这里

 

参考:

三十而立,从零开始学ios开发(十七):Storyboards(上)

几个Xcode Tip 
http://spin.atomicobject.com/2014/05/30/xcode-runtime-attributes/

 

转载于:https://www.cnblogs.com/guangleijia/p/4717825.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值