我将PickerView
和一个按钮拖到我的xib文件中的View中。
但是,当我构建我的代码时,只有我的按钮显示在模拟器中。似乎PickerView
已被隐藏,因为我从PickerView
获得了数据。
这个问题的原因是什么?我该如何解决?
答案 0 :(得分:1)
您必须实现UIPickerViewDataSource中的至少2个方法和UIPickerViewDelegate中的1个方法才能显示选择器视图。以下3种方法创建一个选择器视图,只显示3列12行中的“text”一词:
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component {
return @"Test";
}
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView {
return 3;
}
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component {
return 12;
}
答案 1 :(得分:0)
不要忘记将UIViewController类声明为UIPickerViewDataSource和UIPickerViewDelegate的委托:
@interface YourCustomClassViewController : UIViewController <UIPickerViewDataSource, UIPickerViewDelegate>
答案 2 :(得分:0)
在YourCustomClassViewController.h
文件中,
@interface YourCustomClassViewController : UIViewController <UIPickerViewDataSource, UIPickerViewDelegate>{
IBOutlet UIPickerView *pickerView;
}
在YourCustomClassViewController.m
文件中,您可以添加以下方法
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component {
return @"YourName";
}
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView {
return 2;
}
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component {
return 5;
}
在您的xib文件(YourCustomClassViewController.xib
)中,将Picker连接到File的所有者。喜欢以下方式...
pickerView --->Picker
dataSource --->Picker
delegate ---->Picker
我希望它对你有所帮助。如果您有任何疑问请问我。