您的位置:首页 > 编程语言

图片滤镜功能的代码设计

2014-04-15 20:04 267 查看
- (void)viewDidLoad
{
[super viewDidLoad];
UIButton *leftBtn = [UIButton buttonWithType:UIButtonTypeCustom];
[leftBtn setImage:[UIImage imageNamed:@"btn_back.png"] forState:UIControlStateNormal];
[leftBtn setFrame:CGRectMake(10, 20, 34, 34)];
[leftBtn addTarget:self action:@selector(backView:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:leftBtn];

UIButton *rightBtn =[UIButton buttonWithType:UIButtonTypeCustom];
[rightBtn setImage:[UIImage imageNamed:@"camera_btn_ok.png"] forState:UIControlStateNormal];
[rightBtn setFrame:CGRectMake(270, 20, 34, 34)];
[rightBtn addTarget:self action:@selector(fitlerDone:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:rightBtn];

[self.view setBackgroundColor:[UIColor colorWithWhite:0.388 alpha:1.000]];
rootImageView = [[UIImageView alloc ] initWithFrame:CGRectMake(40, 70, 230, 300)];
rootImageView.image = currentImage;
[self.view addSubview:rootImageView];

//用字符串数组声明所有的滤镜效果
NSArray *arr =[NSArray arrayWithObjects:@"原创美图",@"奇幻世界",@"亮彩风光",@"黑白心情",@"怀旧时刻",@"碧绿清静",nil];
scrollerView = [[UIScrollView alloc]initWithFrame:CGRectMake(0, ScreenHeight - 80, 320, 80)];
scrollerView.backgroundColor = [UIColor clearColor];
scrollerView.indicatorStyle = UIScrollViewIndicatorStyleBlack;
scrollerView.showsHorizontalScrollIndicator = NO;
//关闭纵向滚动条
scrollerView.showsVerticalScrollIndicator = NO;
scrollerView.bounces = NO;
//循环每一次选择的滤镜
float x ;
for(int i=0;i<6;i++)
{
x = 10 + 51*i;
UITapGestureRecognizer *recognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(setImageStyle:)];
recognizer.numberOfTouchesRequired = 1;
recognizer.numberOfTapsRequired = 1;
recognizer.delegate = self;

UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(x, 53, 40, 23)];
[label setBackgroundColor:[UIColor clearColor]];
[label setText:[arr objectAtIndex:i]];
[label setTextAlignment:NSTextAlignmentCenter];
[label setFont:[UIFont systemFontOfSize:13.0f]];
[label setTextColor:[UIColor whiteColor]];
[label setUserInteractionEnabled:YES];
[label setTag:i];
[label addGestureRecognizer:recognizer];

[scrollerView addSubview:label];
[label release];

UIImageView *bgImageView = [[UIImageView alloc]initWithFrame:CGRectMake(x, 10, 40, 43)];
[bgImageView setTag:i];
[bgImageView addGestureRecognizer:recognizer];
[bgImageView setUserInteractionEnabled:YES];
UIImage *bgImage = [self changeImage:i imageView:nil];
bgImageView.image = bgImage;
[scrollerView addSubview:bgImageView];
[bgImageView release];

[recognizer release];
}
//把最终选择的滤镜填充到主界面中
scrollerView.contentSize = CGSizeMake(x + 55, 80);
[self.view addSubview:scrollerView];

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