IOS CALayer,图片圆角阴影效果
来源:互联网 发布:阿里云幕布拍照要求 编辑:程序博客网 时间:2024/06/10 03:59
//// ViewController.m// 图层的基本使用//#import "ViewController.h"#import "UIImage+CZ.h"@interface ViewController ()@property (weak, nonatomic) IBOutlet UIImageView *imgView;@property (weak, nonatomic) IBOutlet UIView *redView;@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. //获取圆角图片 UIImage *image = [UIImage cornerImageWithImageName:@"papa" cornerRadius:10 borderWidth:2 borderColor:[UIColor redColor]]; // 学习CALayer的属性 //autoLayout影响的尺寸设置 // 设置阴影颜色 self.redView.layer.shadowColor = [UIColor blackColor].CGColor; // 阴影的透明度 self.redView.layer.shadowOpacity = 0.5; // 阴影的位置 self.redView.layer.shadowOffset = CGSizeMake(150, 150); // 设置内容 一般设置图片,并且的图片的数据类型为CGImageRef self.redView.layer.contents = (id)image.CGImage; /* *1.如果你设置了masksToBounds为YES,阴影是不出,原因,阴影也被切掉了 *2.如果你想有圆角的效果,又想有阴影,图片本来就有圆角效果 *3.获取话说:自己把图片转换成有圆角的图片,再显示 */ }-(void)test1{ //autoLayout影响的尺寸设置 // 设置尺寸 self.redView.layer.bounds = CGRectMake(0, 0, 150, 150); // 设置边框的颜色 self.redView.layer.borderColor =[UIColor blackColor].CGColor; // 设置边框的宽度 self.redView.layer.borderWidth = 2; // 设置背景颜色 self.redView.layer.backgroundColor = [UIColor greenColor].CGColor; // 设置圆角效果 self.redView.layer.cornerRadius = 10; // 如果圆角周边的剪掉的话,设置一个属性 self.redView.layer.masksToBounds = YES; // 设置阴影颜色 self.redView.layer.shadowColor = [UIColor blackColor].CGColor; // 阴影的透明度 self.redView.layer.shadowOpacity = 0.5; // 阴影的位置 self.redView.layer.shadowOffset = CGSizeMake(150, 150); // 设置内容 一般设置图片,并且的图片的数据类型为CGImageRef self.redView.layer.contents = (id)[UIImage imageNamed:@"papa"].CGImage; /* *1.如果你设置了masksToBounds为YES,阴影是不出,原因,阴影也被切掉了 *2.如果你想有圆角的效果,又想有阴影,图片本来就有圆角效果 *3.获取话说:自己把图片转换成有圆角的图片,再显示 */}- (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated.}@end
图片圆角效果
//// UIImage+CZ.h// 图层的基本使用//#import <UIKit/UIKit.h>@interface UIImage (CZ)//把一图片,裁剪成圆角的效果,圆角大小、边框、边框颜色的新图片+(UIImage *)cornerImageWithImageName:(NSString *)imageName cornerRadius:(CGFloat)cornerRadius borderWidth:(CGFloat)borderWidth borderColor:(UIColor *)borderColor;@end//// UIImage+CZ.m// 图层的基本使用//#import "UIImage+CZ.h"@implementation UIImage (CZ)+(UIImage *)cornerImageWithImageName:(NSString *)imageName cornerRadius:(CGFloat)cornerRadius borderWidth:(CGFloat)borderWidth borderColor:(UIColor *)borderColor{ UIImage *sourceImage = [UIImage imageNamed:imageName]; //生成一张新图片 //1.开上一个位图上下文 UIGraphicsBeginImageContextWithOptions(sourceImage.size, NO, 0.0); //2.把图片画在 位图上下文 //2.1图片要裁剪成有圆角 CALayer *layer = [CALayer layer];//图层里有一张图片 #warning 图层的大小一定要设置 //图层设置大小 layer.bounds = CGRectMake(0, 0, sourceImage.size.width, sourceImage.size.height); //设置内容 layer.contents = (id)sourceImage.CGImage; //设置圆角 layer.cornerRadius = cornerRadius; //裁剪 layer.masksToBounds = YES; //设置边框 layer.borderWidth = borderWidth; //设置边框颜色 layer.borderColor = borderColor.CGColor; [layer renderInContext:UIGraphicsGetCurrentContext()]; //3.从位图上下文 获取新图片 UIImage *newImg = UIGraphicsGetImageFromCurrentImageContext(); //4.结束位图的编辑 UIGraphicsEndImageContext(); //5.返回新图片 return newImg;}@end
0 0
- IOS CALayer,图片圆角阴影效果
- CALayer实现圆角阴影效果
- iOS效果 :(1) CALayer 图层阴影,边框,圆角,圆型图片的阴影
- iOS-设置阴影和圆角效果
- iOS 图片边框及阴影效果
- IOS 图片阴影,圆角等处理
- CALayer 圆角化、阴影、边框
- iOS下按钮同时实现圆角与阴影效果
- iOS设置圆角矩形和阴影效果
- 图片阴影效果
- IOS为文字和图片添加阴影效果
- CALayer图片淡入淡出效果
- 阴影圆角等效果
- ios 图片添加阴影
- IOS图片设置阴影
- shadowColor 图片阴影 iOS
- UIView 利用CALayer 显示出不同的阴影效果
- CALayer的阴影添加以及抖动效果构建
- SAE+Servlet+JSP实现微信公众平台OAuth2.0网页授权的使用
- Java基本数据类型
- MVVM模式简单理解
- CFBundleShortVersionString与CFBundleVersion
- 最近5年133个Java面试问题列表
- IOS CALayer,图片圆角阴影效果
- Linux命令(10):查看内存使用情况
- PopupWindow 点击其他地方消失
- Uncaught SyntaxError: Unexpected token < view1
- Redis学习笔记~Redis提供的五种数据结构
- 7个经典小故事给在职场困倦的你打打气
- 5. URN schema validation
- field 'int android.view.View.mViewFlags' on a null object reference
- 26.Which is the valid CREATE TABLE statement?