产生渐变色的view

简介:

产生渐变色的view

 

效果

 

源码

https://github.com/YouXianMing/UI-Component-Collection


//
//  GradientColorView.h
//  GradientColorView
//
//  Created by YouXianMing on 15/12/15.
//  Copyright © 2015年 YouXianMing. All rights reserved.
//

#import <UIKit/UIKit.h>

@interface GradientColorView : UIView

/**
 *  CGColor's array.
 */
@property (nonatomic, strong) NSArray   *colors;

/**
 *  CGColor's location.
 */
@property (nonatomic, strong) NSArray   *locations;

/**
 *  Start point.
 */
@property (nonatomic) CGPoint startPoint;

/**
 *  End point.
 */
@property (nonatomic) CGPoint endPoint;

/**
 *  After you have set all the properties, you should run this method to make effective.
 */
- (void)becomeEffective;

@end


//
//  GradientColorView.m
//  GradientColorView
//
//  Created by YouXianMing on 15/12/15.
//  Copyright © 2015年 YouXianMing. All rights reserved.
//

#import "GradientColorView.h"

@interface GradientColorView ()

@property (nonatomic, strong) CAGradientLayer  *gradientLayer;

@end

@implementation GradientColorView

+ (Class)layerClass {
    
    return [CAGradientLayer class];
}

- (instancetype)initWithFrame:(CGRect)frame {
    
    if (self = [super initWithFrame:frame]) {
        
        _gradientLayer  = (CAGradientLayer *)self.layer;
        self.startPoint = CGPointMake(0, 0);
        self.endPoint   = CGPointMake(1, 0);
        self.locations  = @[@(0.25), @(0.5), @(0.75)];
        self.colors     = @[(__bridge id)[UIColor redColor].CGColor,
                            (__bridge id)[UIColor greenColor].CGColor,
                            (__bridge id)[UIColor blueColor].CGColor];
    }
    
    return self;
}

- (void)becomeEffective {
    
    self.gradientLayer.startPoint = self.startPoint;
    self.gradientLayer.endPoint   = self.endPoint;
    self.gradientLayer.colors     = self.colors;
    self.gradientLayer.locations  = self.locations;
}

@end

细节


目录
相关文章
|
4月前
|
XML Android开发 数据格式
RecyclerView 、ScrollView滚动条长宽设置
RecyclerView 、ScrollView滚动条长宽设置
170 0
解决CardView在5.0以下留白的问题
解决CardView在5.0以下留白的问题
151 0
解决Toolbar 和状态栏重叠,并且设置Toolbar 的颜色渐变效果
解决Toolbar 和状态栏重叠,并且设置Toolbar 的颜色渐变效果
|
XML 前端开发 Android开发
Android 渐变圆环,圆形进度条效果实现
Android 渐变圆环,圆形进度条效果实现
Android 渐变圆环,圆形进度条效果实现
|
XML Android开发 数据格式
Android自定义ProgressBar样式:渐变圆角水平进度条
Android自定义ProgressBar样式:渐变圆角水平进度条 关键是android:progressDrawable的设置,设置一个android:progressDrawable资源,但是android:progressDrawable需要是一个layer-list。
4519 0
|
前端开发 Android开发 容器
Android自定义Tablayout下划线指示器Indicator:设置宽高、圆角、渐变颜色
Android自定义Tablayout下划线指示器Indicator:设置宽高、圆角、渐变颜色 Android原生的Tablayout下面有一个指示器(指示线、下划线),如图所示:详情见附录1。
6151 0
|
前端开发
02.自定义View(RippleTextView可颜色渐变的TextView)
感谢红橙Darren博主 package com.rzm.commonlibrary.views; import android.content.Context; import android.
1014 0
|
Android开发
android:elevation属性,控制View底部渐变阴影
android:elevation属性,控制View底部渐变阴影 android:elevation这一属性,可以控制View底部渐变阴影,给一个View在其底部增加一定的灰度渐变阴影效果,如图: 上图是一个简单的TextView,TextView底部阴影渐变。
2696 0