-1
所以我想要的是在PickerView中为我的行制作单独的颜色,但我真的不知道如何做到这一点。知道如何制作个性化的文字颜色也很酷。 谢谢。PickerView为行设置单独的颜色
所以我想要的是在PickerView中为我的行制作单独的颜色,但我真的不知道如何做到这一点。知道如何制作个性化的文字颜色也很酷。 谢谢。PickerView为行设置单独的颜色
所以,如果你正在检查的UIPickerView datasource
,你会发现下面的方法:
- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view;
我想你可以通过处理像这样使用它,以修改视图在pickerView
:
pickerView
在你viewDidLoad
为例如:
UIPickerView *pickerView = [[UIPickerView alloc] initWithFrame:CGRectMake(0, self.view.frame.size.height/4, self.view.frame.size.width, self.view.frame.size.height/2)];
pickerView.delegate = self;
pickerView.dataSource = self;
[self.view addSubview:pickerView];
例子:
- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view
{
UIView *customRow = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 30)];
switch (row) {
case 0:
customRow.backgroundColor = [UIColor redColor];
return customRow;
break;
case 1:
customRow.backgroundColor = [UIColor orangeColor];
return customRow;
case 2:
customRow.backgroundColor = [UIColor yellowColor];
return customRow;
case 3:
customRow.backgroundColor = [UIColor greenColor];
return customRow;
case 4:
customRow.backgroundColor = [UIColor blueColor];
return customRow;
case 5:
customRow.backgroundColor = [UIColor purpleColor];
return customRow;
default:
return nil;
break;
}
}
在你的控制器中:
#pragma mark: UIPickeView datasource
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 1;
}
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
return 6;
}
你到目前为止尝试过什么吗?如果是这样,你有什么尝试? –