Iphone 如何在用户做出选择时隐藏UIPickerView

Iphone 如何在用户做出选择时隐藏UIPickerView,iphone,xcode,hide,uipickerview,Iphone,Xcode,Hide,Uipickerview,我用以下代码创建了一个自定义UIPickerView UIPickerView *picker =[[UIPickerView alloc] initWithFrame:CGRectMake(139,50,161,30)]; picker.delegate=self; picker.showsSelectionIndicator=YES; picker.hidden=NO; [self.view addSubview:picker]; 现在,我想在用户仅使用

我用以下代码创建了一个自定义UIPickerView

UIPickerView *picker =[[UIPickerView alloc] initWithFrame:CGRectMake(139,50,161,30)];
    picker.delegate=self;
    picker.showsSelectionIndicator=YES;
    picker.hidden=NO;

    [self.view addSubview:picker];
现在,我想在用户仅使用

picker.hidden=YES;
现在: 1) 如何识别用户的选择,然后隐藏无用的pickerview?
2) 我可以在文本字段中显示选项吗?使用@“choice”?

将此行添加到创建选择器的位置

picker.delegate = self;
你的回电

- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {
    picker.hidden=YES;
}

您可以在UINavigationBar和Barbutton上使用“取消”和“完成”文本

您可以参考以下链接


使用
UIPickerView
的委托方法,如下面所示

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

        yourTextField.text = [yourArray objectAtIndex:row];
        thePickerView.hidden = YES;

    }

此外,您还可以使用一个
ui按钮
并使用
ui按钮
的操作事件隐藏此按钮。我正在使用UIPickerView作为文本字段的输入视图(从而替换屏幕键盘)。我使用以下委托来取消该视图

#pragma mark - UIPickerViewDelegate
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {
    // Code logic
    [[self view] endEditing:YES];
}

UIView*addMealView;//在这里,我展示我的选择器

   - (void)pickerView:(UIPickerView *)pickerView didSelectRow: (NSInteger)row inComponent:(NSInteger)component 
{   
[addMealView endEditing:YES];   
}

我使用UIPickerView作为文本字段的输入视图(用于替换标准键盘)。我使用ResignFirstResponder(TextField方法)关闭视图。

在XCode 12.2中,您可以使用:

#pragma mark - UIPickerViewDelegate
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {
    // Code logic
    [[self view] endEditing:YES];
}
thePickerView.isHidden = true

不,我不想在视图中添加按钮。当用户做出选择时,我想自动隐藏:)您如何识别用户是否选择了正确的选择?添加此行时,只需双击所选行:“UIPickerView”的no visible@interface声明了选择器“addTarget:action…”我在函数中声明了选择器。如何解决?我已将.h中的picker声明为uipickerview,并将其从函数中删除,以不隐藏.h中声明的istance变量,但他解决了这个问题remains@AlessandroBava抱歉,我和日期选择器混淆了。编辑过,这样就不可能这样做了?