Ios 如何防止用户选择字段时UIPickerView关闭?

Ios 如何防止用户选择字段时UIPickerView关闭?,ios,iphone,uipickerview,Ios,Iphone,Uipickerview,当用户选择某个字段时,我试图阻止我的UIPickerview关闭。我希望用户能够选择一个字段,而不必自动取消UIPickerview。我尝试过很多事情,比如尝试以下几点,但没有一件有用: _txtfield.hidden=NO; [_pickerView endEditing:NO]; [pickerView endEditing:NO]; [_txtfield endEditing:NO]; [self endEditing:NO]; _pickerView.hidden=NO; -----

当用户选择某个字段时,我试图阻止我的
UIPickerview
关闭。我希望用户能够选择一个字段,而不必自动取消
UIPickerview
。我尝试过很多事情,比如尝试以下几点,但没有一件有用:

_txtfield.hidden=NO;
[_pickerView endEditing:NO];
[pickerView endEditing:NO];
[_txtfield endEditing:NO];
[self endEditing:NO];
_pickerView.hidden=NO;
-----------------这里有更多的代码----------------


您需要实现UIPickerView委托方法,因此将
添加到
ViewController

在您的
viewdiload
方法中,遵循如下协议:

pickerView.delegate = self;
然后添加以下方法以检测何时选择了行:

- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
    // do nothing because it will not dismiss
}

您还需要实现
numberOfRowsInComponent
numberOfComponents
titleForRow
委托方法,但一旦实现了这些方法,当选择一行时,您的选择器视图不应关闭。你需要在你的
didSelectRow
委托方法中手动关闭选取器视图。

我想你不能,因为如果文本字段是焦点,你需要显示键盘。你能发布你如何显示选取器以及如何关闭它的代码吗?@Vladimir刚刚在上面发布了更多代码。谢谢。我刚刚在上面发布了更多的代码。我按照你的建议做了,但我的pickerview在选择一个字段后立即被解雇。谢谢。它不应该影响功能。UIPickerView的内置功能是,当您选择一行时,它不会关闭,因此您将在不应该关闭的地方关闭它。什么是您的
pickerCallback
回调只传递所选的行。我还有:self.txtfield.inputView=\u pickerView;哦,这改变了一切,发布你的文本域代码。。您是否正在创建另一个textfield first responder、调用resignFirstResponder或self.view.endEditing文本字段中的任意位置???
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
    // do nothing because it will not dismiss
}