更改UIPicker外观

时间:2012-05-24 15:21:53

标签: iphone objective-c ios uikit uipicker

所以我遇到了这个问题,标准UIPicker在我的(proto)应用程序中看起来不太好,我真的会改变它的外观。 我已经用谷歌搜索了它,发现了这个有用的链接http://aralbalkan.com/2985。看起来不错,但我想知道是否有更简单的方法。

这里关于堆栈溢出我找到了这个帖子Is it possible to 're-skin' the IOS Date Picker?,它是“未解决的”但指向第一篇文章。

我还在Apress Book“开始Iphone开发”(我认为第7章)中做了一个教程,非常有用,但是我只改变了列的内容,而不是它的完整外观。 为了清楚起见,有这样的事情会很棒:

enter image description here

对于Objective-c新手,任何人都有一个很好的教程/链接/建议吗? Thx in advice

编辑: 所以我已经实现了下面两个答案中详述的方法,它就像一个魅力。但我仍然坚持使用背景颜色......

2 个答案:

答案 0 :(得分:1)

可以使用UIPickerViewDelegate的{​​{1}}创建数字,而逗号可以通过pickerView:viewForRow:forComponent:reusingView:添加。

或者你走另一条路并使用开源替代方案,即AFPickerView

您可以在层次结构中操作视图 - 但可能更容易重新创建选择器...

addSubView:

答案 1 :(得分:1)

使用UIPickerView的委托。创建一个名为

的方法
- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view

所以在这一点上,你可以创建一个UIView(或子类)。此时,您可以完全控制视图的显示内容。您可以更改背景颜色和alpha。如果你是UIView的子类,你可以拥有自己的绘图程序。