UIPickerView 选择指示器问题
Posted
技术标签:
【中文标题】UIPickerView 选择指示器问题【英文标题】:UIPicker View Selection Indicator Issue 【发布时间】:2012-01-30 19:35:31 【问题描述】:我只想知道为什么选择指示器在我的 iPad 应用程序中看起来像这样。 “像这样”我的意思是前半部分有一种颜色图案,而另一半有另一种颜色图案。我正在像这样以编程方式创建我的 UIPickerView:
pickerView = [[UIPickerView alloc] init];
pickerView.showsSelectionIndicator = YES;
pickerView.delegate = self;
pickerView.dataSource = self;
txtFolder.inputView = pickerView;
我需要选择器视图来显示相同的颜色图案。有什么想法吗?
【问题讨论】:
可能是SDK出了点问题……你试过重装Xcode和ios SDK吗? 【参考方案1】:我今天整天都在同一个问题作斗争。
我有类似的代码:
pickerView = [[UIPickerView alloc] init];
pickerView.showsSelectionIndicator = YES;
pickerView.delegate = self;
pickerView.dataSource = self;
[pickerView selectRow:0 inComponent:0 animated:NO];
txtFolder.inputView = pickerView;
因此,如果您在选择一行后执行 'pickerView.showsSelectionIndicator = YES' 即可解决问题。
解决办法:
pickerView = [[UIPickerView alloc] init];
pickerView.delegate = self;
pickerView.dataSource = self;
[pickerView selectRow:0 inComponent:0 animated:NO];
pickerView.showsSelectionIndicator = YES;
txtFolder.inputView = pickerView;
Alex,试试这个,可能对你有帮助。
更新:
但唯一真正的方法是在弹出框内显示选择器。问题的原因是选择器不适合主屏幕!
【讨论】:
【参考方案2】:今天也发生了同样的事情。
我所做的修复它是为选择器提供适当的宽度。
类似这样的:
int viewWidth = self.view.frame.size.width;
UIPickerView *picker = [[UIPickerView alloc] initWithFrame:CGRectMake(0, 0, width, 150)];
【讨论】:
有点晚了,这很有魅力,要使用默认键盘高度,请指定高度为 0。以上是关于UIPickerView 选择指示器问题的主要内容,如果未能解决你的问题,请参考以下文章
原型 tableviewcell 内的 UIPickerView 没有选择指示器
具有三个组件的自定义 UIPickerView,每个组件在选择指示器上显示标签