Пользовательский UIPickerView с пользовательским цветом фона

Я создал образец picker-view, который отобразит некоторые детали. Установка цвета фона с помощью:

_pickerView.backgroundColor = [UIColor redColor]; 

похоже, не работает. Но я хотел бы создать представление выбора, как показано ниже.

enter image description here

То, что я пытался сделать, весь цвет фона PickerView не должен быть белым, он должен заполнить UIColor, который я даю. Это возможно?? Как это можно сделать?

Ответ 1

Дополнение к ответу Nina ниже, некоторые из хороших настраиваемых элементов управления Picker, которые будут хороши для использования с точки зрения производительности и настраиваемого.

Ответ 2

Я написал пользовательское представление выбора, которое использует UITableView в качестве отправной точки. Не стесняйтесь настраивать его, как хотите.

https://github.com/derekju/DjuPickerView

Ответ 3

Вы можете изменить выбранный цвет, вставив в него ячейку tableview.

- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view {
UITableViewCell *cell = (UITableViewCell *)view;

if( cell == nil ) {
    cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:nil] autorelease];
    [cell setBackgroundColor:[UIColor redColor]];

    [cell setBounds: CGRectMake(0, 0, cell.frame.size.width -20 , 44)];
    cell.textLabel.text = [self.userNameArray objectAtIndex:row];
    cell.userInteractionEnabled = NO;
}

return cell;
}

Ответ 4

Трудно настроить UIPickerView.

Вы можете использовать его по умолчанию или пытаться имитировать UIPickerView с использованием другого компонента UIKit, такого как UITableView. Есть несколько библиотек, которые используют UITableView для моделирования более гибкого UIPickerView.

Ответ 5

UIPickerView имеет подзоны. Присвоение изображения представлению и добавление его в подвью в индексе 2 изменит фон pickerview.

У меня была одна и та же проблема:-) См. мой вопрос здесь! Настроить скин UIPickerView с изображениями

Или вы можете использовать AFPickerView

Ответ 6

API не предоставляет способ изменить стиль и цвет набора выбора. Вы можете изменить только внутренний вид сборщика, как вы хотите проектировать. Поскольку UIPickerView не имеет UI_APPEARANCE_SELECTOR.

Посмотрите ниже, ссылка поможет вам. Пользовательский iOS UIDatepicker с использованием UIAppearance