Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 动态显示/隐藏使用interface builder创建的UIPickerView_Ios_Objective C_Uipickerview - Fatal编程技术网

Ios 动态显示/隐藏使用interface builder创建的UIPickerView

Ios 动态显示/隐藏使用interface builder创建的UIPickerView,ios,objective-c,uipickerview,Ios,Objective C,Uipickerview,我正在尝试创建一个iPad/iPhone应用程序,它根据RESTful API返回的JSON对象动态创建菜单。具体地说,我试图显示/隐藏我使用interface builder创建的UIPickerView。在界面生成器的“属性”菜单中,我选中了该UIPickerView的“隐藏”框。我用它来创建UIPickerView。我已经使用interface builder将委托和数据源设置为视图控制器。当满足某个条件时,我想取消隐藏/显示UIPickerView。到目前为止,我已经尝试了以下代码:

我正在尝试创建一个iPad/iPhone应用程序,它根据RESTful API返回的JSON对象动态创建菜单。具体地说,我试图显示/隐藏我使用interface builder创建的UIPickerView。在界面生成器的“属性”菜单中,我选中了该UIPickerView的“隐藏”框。我用它来创建UIPickerView。我已经使用interface builder将委托和数据源设置为视图控制器。当满足某个条件时,我想取消隐藏/显示UIPickerView。到目前为止,我已经尝试了以下代码:

 [self.choicePicker setHidden:NO];
 self.choicePicker.hidden = NO;
我通常以编程方式构建这样的对象,但我想我应该这样做。我浏览了各种stackoverflow帖子并进行了研究,但似乎找不到有效的方法。我对Objective C的编程还不熟悉。非常感谢您的帮助

.h文件代码

@interface slrpViewController : UIViewController<UITextFieldDelegate, UIPickerViewDelegate, UIPickerViewDataSource>
 {

IBOutlet UIPickerView *picker_choice;

NSMutableArray *dataArray;
NSMutableData *receivedData;
 }

 @property(nonatomic, strong) UILabel *nameLabel;
 @property(nonatomic, retain) UIPickerView *choicePicker;
-(void)buildChoicesMenu:(NSDictionary *)choiceDict{
//in this method we build the choices menu

[self.choicePicker setHidden:NO];
self.choicePicker.hidden = NO;
if (self.choicePicker) self.choicePicker.hidden = !self.choicePicker.hidden;
}

您定义了两个不同的选择器视图。一个是属性
choicePicker
(和隐式
\u choicePicker
实例变量),另一个是实例变量
picker\u choice
。您似乎已在interface builder中连接了您的
picker\u选项
,但正在尝试修改属性。事实上,如果您尝试在调试器中打印
po self.choicePicker
,您将得到
nil
,因为没有任何内容填充它

删除实例变量,并在interface builder中连接属性,或者使用实例变量合成属性:

@syntesize choicePicker=picker_choice

这应该行得通。那么,您可以发布一些代码吗?buildChoicesMenu方法将始终将self.choicePicker.hidden设置为YES。。。你是在别的地方把它设为“否”吗?