【发布时间】:2013-12-08 10:50:44
【问题描述】:
我在 for 循环中生成了一些按钮,每个按钮都有自己的标签。现在我想点击一个按钮并打开一个颜色选择器并设置按钮的颜色。
我的问题是,当我打开颜色选择器并选择一种颜色时,它会设置在不同的按钮上。我想点击一个按钮并只为点击的按钮选择颜色。
我使用的代码是:
for(int i=0;i<=5;i++){
btnphoto=[[UIButton alloc]initWithFrame:CGRectMake(10,(30*i)+110,50,20)];
[btnphoto setTitle:@"Photo" forState:UIControlStateNormal];
[btnphoto setBackgroundColor:[UIColor redColor]];
[btnphoto addTarget:self action:@selector(buttonPressPickColor:)
forControlEvents:UIControlEventTouchUpInside];
btnphoto.tag=100 + i;
[self.view addSubview:btnphoto];
}
-(IBAction)buttonPressPickColor:(UIButton*)sender
{
btnphoto.tag = sender.tag;
NSLog(@"Btn photo Tag = %d",sender.tag);
NEOColorPickerViewController *controller = [[NEOColorPickerViewController alloc] init];
controller.delegate = self;
controller.selectedColor = self.currentColor;
controller.title = @"Color Picker";
UINavigationController* navVC = [[UINavigationController alloc]initWithRootViewController:controller];
[self presentViewController:navVC animated:YES completion:nil];
}
-(void)colorPickerViewController:(NEOColorPickerBaseViewController *)controller didSelectColor:(UIColor *)color
{
btnphoto.backgroundColor = color; /// Important Line
[controller dismissViewControllerAnimated:YES completion:nil];
}
【问题讨论】:
-
请有人回答这个问题
-
对您自己的问题发表评论并要求他人回答不会添加任何信息。我们知道您希望问题得到解答。不然你为什么会一开始就问它?
-
也许你可以解释/推理一下代码中的“重要行”。
-
因为从那一行按钮有颜色..
标签: ios iphone objective-c ipad ios7