Как установить цвет фона UIPickerView на iOS 7 с помощью SDK 7?

Как установить цвет фона UIPickerView на iOS 7 с помощью SDK 7 и использовать стандартный подборщик на iOS 5 и 6? Он прозрачен по умолчанию на iOS 7.

Ответы

Ответ 1

Я добавил UIView под UIPickerView с кодом:

CGRect framePickerView = CGRectMake(0, self.view.frame.size.height, self.view.frame.size.width, 216);
pickerView = [[[UIView alloc] initWithFrame:framePickerView] autorelease];
pickerView.backgroundColor = [UIColor whiteColor];
[self.view addSubview:pickerView];
[pickerView addSubview:picker];

вместо кода:

[self.view addSubview:picker];

Ответ 2

Что случилось с:

[picker setBackgroundColor:[UIColor whiteColor]];

Я предполагаю, что вы ссылаетесь на представление выбора, если вы его вызываете, и это подкласс UIView, поэтому backgroundColor является допустимым свойством...

Ответ 3

Я хотел написать это как комментарий, но было бы трудно прочитать:) Sooo....

-(UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view
{
    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 50, 44)]; // your frame, so picker gets "colored"
    label.backgroundColor = [UIColor lightGrayColor];
    label.textColor = [UIColor blackColor];
    label.font = [UIFont fontWithName:@"HelveticaNeue-Bold" size:18];
    label.text = [NSString stringWithFormat:@"%d",row];

    return label;
}

Кроме того, он не должен быть только ярлыком, я думаю, вы также можете вставить другие подзаголовки... Он работает на iOS7, насколько я знаю pic here

Ответ 4

Это работало для меня, в iOS 7.1:

[[UIPickerView appearance] setBackgroundColor:[UIColor whiteColor];

Это изменяет цвет всех сборщиков. Вы можете установить условие вокруг него, если вы хотите, чтобы это выполнялось на устройствах с iOS 7.

Ответ 5

Для тех, кто работает быстро и потенциально использует несколько сборщиков:

pickerView1.backgroundColor = UIColor.darkGrayColor()
pickerView2.backgroundColor = UIColor.greenColor()

Xcode 7.3