您的位置:首页 > 其它

CALayer实现点击屏幕放大或者缩小的一个圆

2015-03-12 14:29 489 查看
#import "ViewController.h"
#define WIDTH 50
@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
[super viewDidLoad];
[self drawMyLayer];
}
-(void)drawMyLayer
{
CGSize size=[UIScreen mainScreen].bounds.size;

CALayer *layer=[[CALayer alloc]init];
layer.backgroundColor=[UIColor colorWithRed:0 green:146/255.0 blue:1.0 alpha:1.0].CGColor;
layer.position=CGPointMake(size.width/2, size.height/2);
layer.bounds=CGRectMake(0, 0, WIDTH, WIDTH);
layer.cornerRadius=WIDTH/2;
layer.shadowColor=[UIColor grayColor].CGColor;
layer.shadowOffset=CGSizeMake(2, 2);
layer.shadowOpacity=0.9;
[self.view.layer addSublayer:layer];

}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];

}
-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
UITouch *touch=[touches anyObject];
CALayer *layer=self.view.layer.sublayers[0];
CGFloat width=layer.bounds.size.width;
if (width==WIDTH) {
width=WIDTH *4;
}
else
{
width=WIDTH;
}
layer.bounds=CGRectMake(0, 0, width, width);
layer.position=[touch locationInView:self.view];
layer.cornerRadius=width/2;
[self.view.layer addSublayer:layer];
}
@end


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐