iOS 视图添加指定边框

2020-05-08  本文已影响0人  863cda997e42

可以为视图的每个边框指定不同的颜色和宽度。可以用来添加界面中的分割线。
头文件


#import <UIKit/UIKit.h>

@interface UIView (Border)

-(void)addBorderWithColor: (UIColor *) color andWidth:(CGFloat) borderWidth;
-(void)addBottomBorderWithColor: (UIColor *) color andWidth:(CGFloat) borderWidth;
-(void)addLeftBorderWithColor: (UIColor *) color andWidth:(CGFloat) borderWidth;
-(void)addRightBorderWithColor: (UIColor *) color andWidth:(CGFloat) borderWidth;
-(void)addTopBorderWithColor: (UIColor *) color andWidth:(CGFloat) borderWidth;

@end

实现文件


#import "UIView+Border.h"

@implementation UIView (Border)

-(void)addBorderWithColor: (UIColor *) color andWidth:(CGFloat) borderWidth{
    self.layer.borderColor = color.CGColor;
    self.layer.borderWidth = borderWidth;
}

-(void)addTopBorderWithColor:(UIColor *)color andWidth:(CGFloat) borderWidth {
    CALayer *border = [CALayer layer];
    border.backgroundColor = color.CGColor;
    border.frame = CGRectMake(0, 0, self.frame.size.width, borderWidth);
    [self.layer addSublayer:border];
}

-(void)addBottomBorderWithColor:(UIColor *)color andWidth:(CGFloat) borderWidth {
    CALayer *border = [CALayer layer];
    border.backgroundColor = color.CGColor;
    border.frame = CGRectMake(0, self.frame.size.height - borderWidth, self.frame.size.width, borderWidth);
    [self.layer addSublayer:border];
}

-(void)addLeftBorderWithColor:(UIColor *)color andWidth:(CGFloat) borderWidth {
    CALayer *border = [CALayer layer];
    border.backgroundColor = color.CGColor;
    border.frame = CGRectMake(0, 0, borderWidth, self.frame.size.height);
    [self.layer addSublayer:border];
}

-(void)addRightBorderWithColor:(UIColor *)color andWidth:(CGFloat) borderWidth {
    CALayer *border = [CALayer layer];
    border.backgroundColor = color.CGColor;
    border.frame = CGRectMake(self.frame.size.width - borderWidth, 0, borderWidth, self.frame.size.height);
    [self.layer addSublayer:border];
}

@end

可以给指定的边添加边框。引入头文件 "UIView+Border.h",调用指定的方法即可。

上一篇 下一篇

猜你喜欢

热点阅读