2011-10-20 23 views
0

我正面临UIpickerview的问题。在我的应用程序中,我实现了用于显示国家/地区列表的uipickerview,我在uipickerview上方添加了一个具有两个按钮(Cancel和DONE)的工具栏。如果我按取消它只是隐藏uipickerview和一切都很好。 但是,如果我使用DONE按钮,我从组件中获得选定行的值,并隐藏pickerview它工作正常问题出现如果有人移动countrist非常快,因为他可以突然他按DONE按钮,然后uipickerview隐藏但未返回选定来自组件的行值。这就是我的问题..UipickerView如何知道它何时停止移动

它可以处理,如果我可以跟踪选择器移动停止时,则需要显示完成按钮,否则(在移动状态的情况下)完成按钮将被隐藏。

有人可以有任何想法或任何替代方法来解决这个问题。

谢谢,

回答

1

这可能有所帮助。一旦选择器停止滚动

[myPickerView addTarget:self action:@selector(pickerDidStop) forControlEvents:UIControlEventValueChanged]; 

这里pickerDidStop方法将被调用。你可以用这种方法做你想要的东西。

快乐编码!干杯!!

+0

-addTarget:action:forControlEvents:是一个UIControl方法,但UIPickerView是从UIView派生的。 UIPickerView的实例不响应此方法。 –

0

你可以把一个全局变量,并通过使用下面的方法:

-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component; 

可以赋值给全局变量。 然后通过检查全局变量的Done按钮上的条件,您可以随心所欲地进行操作。

相关问题