zoukankan      html  css  js  c++  java
  • Adding A Shadow To UIView

    参考: http://nscookbook.com/2013/01/ios-programming-recipe-10-adding-a-shadow-to-uiview/

    shadowOffset
    is a CGSize representing how far to offset the shadow from the path.

    shadowColor
    is the color of the shadow. Shadow colors should always be opaque, because the opacity will be set by the shadowOpacity property. The shadowColor property is a CGColor not a UIColor.

    shadowRadius
    is the width of the shadow along the shadow path
    he blur radius (in points) used to render the layer’s shadow

    shadowOpacity
    determines the opacity of the shadow.

    shadowPath
    is probably the most important of the properties. While a shadow can be drawn without specifying a path, for performance reasons you should always specify one. This path tells Core Animation what the opaque regions of the view are, and without it, things slow down severely! It is a CGPath, which is most easily created using UIBezierPath (iOS only)

    按钮左边添加阴影
    - (CGPathRef)fancyShadowForRect:(CGRect)rect
    {
    CGSize size = rect.size;
    UIBezierPath *path = [UIBezierPath bezierPath];
    [path moveToPoint:CGPointZero];
    [path addLineToPoint:CGPointMake(-12, 7)];
    [path addLineToPoint:CGPointMake(-12, size.height - 7)];
    [path addLineToPoint:CGPointMake(0, size.height - 7)];
    [path closePath];
    return path.CGPath;
    }


    plusBtn.layer.shadowOffset = CGSizeZero;
    plusBtn.layer.shadowOpacity = 0.9;
    plusBtn.layer.shadowColor = [[UIColor whiteColor] CGColor];
    plusBtn.layer.shadowRadius = 5;
    plusBtn.layer.shadowPath = [self fancyShadowForRect:plusBtn.bounds];

  • 相关阅读:
    Android SDK 在线更新镜像服务器
    Android Studio (Gradle)编译错误
    java ZIP压缩文件
    java文件操作(输出目录、查看磁盘符)
    JXL读取写入excel表格数据
    Linux命令zip和unzip
    Linux查看系统基本信息
    Ubuntu C++环境支持
    Linux开机执行bash脚本
    ubuntu中磁盘挂载与卸载
  • 原文地址:https://www.cnblogs.com/qike/p/5561345.html
Copyright © 2011-2022 走看看