渐变投影阴影的实现

渐变

渐变层在其背景色上绘制颜色渐变,即是填充层的形状(包括圆角),通俗的来说就是根据shape形状来绘制渐变色

CAgradientLayerLayer *gradientLayer = [CAgradientLayerLayer layer];

/// startPoint与endPoint分别为渐变的起始方向与结束方向,它是以矩形的四个角为基础的,(0,0)为左上角、(1,0)为右上角、(0,1)为左下角、(1,1)为右下角,默认是值是(0.5,0)和(0.5,1)
gradientLayer.startPoint = CGPointMake(0, 0);
gradientLayer.endPoint = CGPointMake(1, 0);
gradientLayer.frame = CGRectMake(0, 0, 100, 100);

/// 渐变点
gradientLayerLayer.locations = @[@(0.7), @(1.0)];  

/// 颜色渐变数组
gradientLayer.colors = @[];
[view.layer insertSublayer:gradientLayer atIndex:0];

投影

在 iOS 里实现阴影的方式是使用 UIView 的 layer 属性。

layer 里与阴影有关的设置是以下几个属性:

  • shadowPath
  • shadowColor
  • shadowOpacity
  • shadowOffset
  • shadowRadius

与 Sketch 里阴影参数的对应关系是:

  • shadowPath ~> 阴影的范围
  • shadowColor ~> 阴影的颜色
  • shadowOpacity ~> 阴影的透明度
  • shadowOffset ~> X 和 Y
  • shadowRadius ~> 阴影的模糊
///阴影的颜色
view.layer.shadowColor = [UIColor blackColor].CGColor;

///阴影的透明度
view.layer.shadowOpacity = 0.4f;

///阴影的圆角
view.layer.shadowRadius = 4.0f;

///阴影偏移量
view.layer.shadowOffset = CGSizeMake(0,0);//Defaults to (0, -3). Animatable.

results matching ""

    No results matching ""

    results matching ""

      No results matching ""