UIPickerView行选择

问题描述:

我有一个UIPickerView有两个组件。 当用户滚动每个组件直到达到所需值时,它都能正常工作。 但我希望它的行为像日历或时钟应用程序中的选择器。含义:当用户在其中一个组件中按下某个值时,我希望该组件自动将该行作为所选行(这样用户不必总是滚动,他/她也可以简单地选择该值他们要)。UIPickerView行选择

有谁知道该怎么做?

谢谢

〜Chonch

+0

你想要UIDatePicker吗? – kennytm 2010-03-01 14:40:33

+0

不需要。我想要一个包含两个组件的自定义选取器... – 2010-03-01 18:39:48

这是标准的选择器的行为,它应该使自动工作。

如果选择器没有选择抽头行会自动尝试设置userInteractionEnabled属性NO为您在选择器中的数据源viewForRow:方法返回的视图。

+0

我使用UIView和UILabel作为viewForRow的返回值。我试图为UILabel和UIView添加userInteractionEnabled,但它似乎没有帮助。 你能想到其他的选择吗? – 2010-03-01 16:09:54

+0

你可以发布你的viewForRow:方法吗? – Vladimir 2010-03-01 16:26:32

+0

if(component == 0) \t { \t \t Style * curStyle = [self.styleArray objectAtIndex:row]; \t \t \t \t //创建的用于当前部件 \t \t的CGRect帧= CGRectMake(0,0,120,46)的视图; \t \t UIView * view = [[UIView alloc] initWithFrame:frame]; \t \t \t \t //添加部分名称 \t \t帧= CGRectMake(10,0,110,46); \t \t UILabel * lbl = [[UILabel alloc] initWithFrame:frame]; \t \t lbl.text = curStyle.styleName; \t \t lbl.backgroundColor = [UIColor clearColor]; \t \t [view addSubview:lbl]; \t \t [lbl release]; \t \t view.userInteractionEnabled = YES; \t \t \t \t return view; \t} \t else \t \t return [self.partsArray objectAtIndex:row]; – 2010-03-01 18:18:00