Ios setHidden不适用于UIPickerView

Ios setHidden不适用于UIPickerView,ios,objective-c,uipickerview,Ios,Objective C,Uipickerview,我试图在单击按钮时显示/隐藏UIPickerView,调用下面的方法是因为mapView隐藏没有问题,并且NSLog是if和else决策的输出,所以我在这里真的不知所措,非常沮丧 - (IBAction)chooseSpot:(id)sender { if([spotPicker isHidden]) { NSLog(@"Hidden true"); [mapView setHidden:YES]; [spotPicker setHidden:NO]; } else {

我试图在单击按钮时显示/隐藏UIPickerView,调用下面的方法是因为mapView隐藏没有问题,并且NSLog是if和else决策的输出,所以我在这里真的不知所措,非常沮丧

- (IBAction)chooseSpot:(id)sender {
if([spotPicker isHidden]) {
    NSLog(@"Hidden true");
    [mapView setHidden:YES];
    [spotPicker setHidden:NO];
}
else {
    NSLog(@"Hidden false");
    [spotPicker setHidden:YES];
    [mapView setHidden:NO];
}

我非常确定我创建了一个IBOutlet并命名为spotPicker,我已经做了两次了……还有什么我可能会错过的吗?我还是个新手,这可能真的很愚蠢……

使用[spotPicker removeFromSuperView];删除它并使用addSubView显示。开始使用助手编辑器。这将防止您在创建IBOutlet后忘记连接它,也将防止您忘记在viewDidUnload方法中将outlet设置为nil。我将addSubView消息发送到哪个对象?我已经为根视图创建了一个IBOutlet,并尝试将其发送到addSubView,但没有成功。我知道如何创建IBOutlets和助理编辑器,但我不知道还有什么不对劲,我可以通过removeFromSuperview使视图消失,但不能通过其他方式。。。