IBInspectable storyboard 中直接修改邊框顏色和邊框寬度
IB_DESIGNABLE storyboard 中直接顯示出圓角效果
效果圖
storyboard 中直接修改邊框顏色和邊框寬度
<img src=http://www.boitx.org/ios/IBInspectable/1.gif width=600>
storyboard 中直接顯示出圓角效果
<img src=http://www.boitx.org/ios/IBInspectable/2.gif width=900>
IBInspectable
用 IBInspectable 聲明變量,變量會直接顯示到 storyboard 中 屬性檢查器里面,會像修改 view 顏色一樣方便的進行修改。
@property (nonatomic,strong) IBInspectable UIColor *borderC;
@property (nonatomic,assign) IBInspectable CGFloat borderWidth;
IB_DESIGNABLE
聲明類,對類進行自定義,自定義效果會直接顯示到 storyboard 中。
IB_DESIGNABLE
@interface BorderView : UIView
核心代碼
BorderView.h
#import <UIKit/UIKit.h>
IB_DESIGNABLE
@interface BorderView : UIView
@property (nonatomic,strong) IBInspectable UIColor *borderC;
@property (nonatomic,assign) IBInspectable CGFloat borderWidth;
@end
BorderView.m
#import "BorderView.h"
@implementation BorderView
- (instancetype)initWithFrame:(CGRect)frame
{
if (self = [super initWithFrame:frame]) {
self.layer.masksToBounds = YES;
self.layer.cornerRadius = 50;
}
return self;
}
- (void)setBorderC:(UIColor *)borderC
{
_borderC = borderC;
self.layer.borderColor = borderC.CGColor;
}
- (void)setBorderWidth:(CGFloat)borderWidth
{
_borderWidth = borderWidth;
self.layer.borderWidth = borderWidth;
}
@end