UIView 实现渐变色 CAGradientLayer

本文详细介绍了如何在iOS开发中创建一个自定义的UIView,并通过设置边界、圆角、背景颜色、阴影以及渐变效果来实现美观且交互性的UI组件。通过实例演示了如何使用CALayer为UIView添加阴影和渐变光泽,提供了实现类似设计的步骤和代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

- (UIView *)sendView {
    if (_sendView == nil) {
        _sendView = [[UILabel alloc]init];
        _sendView.frame = CGRectMake(0, 0, KScreenWidth-40, kH(30));
        
        /**
         *  渐变设置
         */
        _sendView.layer.borderWidth = 1;
        _sendView.layer.cornerRadius = 4;
        _sendView.layer.masksToBounds = YES;
        _sendView.layer.borderColor = [[UIColor lightGrayColor] CGColor];
        _sendView.backgroundColor = [UIColor yellowColor];
        //阴影
        _sendView.layer.shadowColor = [[UIColor redColor] CGColor];
        _sendView.layer.shadowOffset = CGSizeMake(5.0f, 5.0f); //[水平偏移, 垂直偏移]
        _sendView.layer.shadowOpacity = 1.0f; // 0.0 ~ 1.0 的值
        _sendView.layer.shadowRadius = 10.0f; // 阴影发散的程度
        
        //渐变光泽
        CAGradientLayer *gradient = [CAGradientLayer layer];
        gradient.frame = _sendView.bounds;
        gradient.colors = [NSArray arrayWithObjects:(id)[[UIColor whiteColor]CGColor], (id)[[UIColor lightGrayColor] CGColor], nil]; // 由上到下由白色渐变为灰色
        [_sendView.layer insertSublayer:gradient atIndex:0];
        [self addSubview:_sendView];
        
    }
    return _sendView;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值