如何在iPhone中更改UIPickerView的背景颜色

时间:2011-02-19 09:22:51

标签: iphone uipickerview

我在我的应用程序中使用了选择器视图控制器。现在我想改变背景颜色的颜色。那么我怎么能改变选择器视图的背景颜色,也想改变行背景颜色。我想更改选择器视图的默认布局颜色,是否可以将自定义图像设置为选择器视图的背景?所以请指导我。

5 个答案:

答案 0 :(得分:1)

我已经answered一个similar question。您可以使用IXPickerOverlayView类(available on GitHub)完全替换背景图片来更改背景颜色。

答案 1 :(得分:0)

您可以在UIView的组件中添加UIPickerView,但不能更改背景颜色或色调。

  • viewForRow:forComponent用于观看。

答案 2 :(得分:0)

终于成功了。我尝试用一​​个组件的选择器视图。

按向导或代码设置选择器视图背景颜色,如下所示:

Picker1.backgroundColor = [UIColor someColor];// clearColor for transparent

为编号为0,1和3的选择器视图子视图设置alpha值。(不知道为什么存在子视图2的想法)。在拾取器视图的第一个加载数据之后通过代码执行,如下所示(如果在DidViewLoad中执行此操作,则会抛出异常)。

[(UIView*)[[Picker1 subviews] objectAtIndex:0] setAlpha:someValue];// 0.0f for transparent
[(UIView*)[[Picker1 subviews] objectAtIndex:1] setAlpha:someValue];
[(UIView*)[[Picker1 subviews] objectAtIndex:3] setAlpha:someValue];

请勿忘记在viewForRow方法中清除要发送到选择器视图的标签的背景颜色。

lbl.backgroundColor = [UIColor someColor];// could be clearColor

答案 3 :(得分:0)

我最近写了an article about just this topic。很容易实现你想做的事情。 (虽然文章是关注iOS7的,但是无论现代iOS版本如何,为组件行提供视图而不是字符串的技术都可以使用。)

答案 4 :(得分:0)

我更改了UIPicker背景颜色和UIPicker工具栏颜色和字体颜色。让你的UIPickerView名称为pickerView。

pickerView.backgroundColor = [UIColor greenColor];   - 在greenColor的位置,您可以使用任何颜色

pickerView.backgroundColor = [UIColor colorWithRed:127 green:127 blue:127 alpha:1];   - 在这里您可以提供您选择的任何颜色代码。

假设您在UIPickerView中使用了工具栏,那么我们可以使用更改颜色 toolBar.backgroundcolor = [UIColor greenColor];   - 在greenColor的位置,您可以使用任何颜色

toolBar.backgroundColor = [UIColor colorWithRed:127 green:127 blue:127 alpha:1];   - 在这里您可以提供您选择的任何颜色代码。

toolBar.backgroundImage = [UIImage imageWithName:@" imageName"];   - 您可以在工具栏中将图像设置为backgroundImage。