UIView(视图)

@property (nonatomic, strong) UIView *View;

- (UIView *)View {
    if (!_View) {
        UIView *centView = [[UIView alloc] init];
        centView.backgroundColor = [UIColor grayColor];
        _View = centView;
    }
    return _View;
}

 [self.View makeConstraints:^(MASConstraintMaker *make) {
        make.left.right.equalTo(self.view);
        make.height.equalTo(@30);
        make.width.equalTo(@30);
    }];

线

@property (nonatomic, strong) UIView *lineView;
- (UIView *)lineView {
    if (!_lineView) {
        _lineView = [[UIView alloc] init];
        _lineView.backgroundColor = [UIColor grayColor];
    }
    return _lineView;
}    

[self.contentView addSubview:self.lineView];
[self.lineView makeConstraints:^(MASConstraintMaker *make) {
        make.left.equalTo(self.contentView);
        make.right.equalTo(self.contentView);
        make.bottom.equalTo(self.descLable.top);
        make.height.equalTo(@(0.5));
    }];

拓展

#圆角
[self.view setCornerRadius:5];
#边框
[self.view setBorderColor:UIColor.blackColor width:1];
#圆角+阴影
[self.viewTop setShaowAndConner:[UIColor blackColor] Offset:CGSizeMake(2, 2) Radius:5 SRadius:5 Opacity:1];

渐变

- (void)layoutSubviews{
    [super layoutSubviews];
    
    //获得准确frame 保证已经形成frame 的情况下
    [self.viewCenter layoutIfNeeded];
    [self.viewCenter setGradientLayerWithColors:@[(id)rgb(248,149,95).CGColor,(id)rgb(251,77,77).CGColor] StartPoint:CGPointMake(0, 0) EndPoint:CGPointMake(1, 0)];
    
    NSLog(@"--222--%@",NSStringFromCGRect(self.viewCenter.frame));
    
}

任意圆角

viewdidload
//在xib关联的控制器中  viewdidload,获取某个控价的frame 加 layoutIfNeeded
[_btnConfirm layoutIfNeeded];
[_btnConfirm hyb_addCorner: UIRectCornerTopLeft | UIRectCornerTopRight cornerRadius:cornerRadius];

//保证已经形成frame 的情况下  (在控制器中--viewDidLayoutSubviews 下写)
[self hyb_addCorner: UIRectCornerTopLeft | UIRectCornerTopRight cornerRadius:cornerRadius];

// cell 里面用约束的布局情况下  self 在这能获取准确大小,self 的子视图则不行
- (void)layoutSubviews{
    [super layoutSubviews];
    [self hyb_addCorner: UIRectCornerTopLeft | UIRectCornerTopRight cornerRadius:cornerRadius];
}
// cell  子视图 用约束的布局情况下 layoutIfNeeded 重要,
- (void)layoutSubviews{
    [super layoutSubviews];
    
    //获得准确frame,有时不管用 ,或     [self.viewCenter.superview layoutIfNeeded];

    [self.viewCenter layoutIfNeeded];
    [self.viewCenter hyb_addCorner: UIRectCornerTopLeft | UIRectCornerTopRight cornerRadius:cornerRadius];
    NSLog(@"--222--%@",NSStringFromCGRect(self.viewCenter.frame));


}

阴影
实现UIView任意圆角+绘制阴影
https://www.jianshu.com/p/c47c52e9a8e3

image.png

CAShapeLayer 画线

你可能感兴趣的:(UIView(视图))