我正在尝试以PickerView
编程方式创建视图。
我遵循了所有必要的步骤,但是选择器只是出现,然后立即消失。没有数据可见。
我正在设置委托和数据源,并且已经实现了必要的方法。这是我的代码:
在.h中
@interface NJATimeEntryViewController : UIViewController <UIPickerViewDelegate, UIPickerViewDataSource>
@property (nonatomic, strong) UIPickerView *customerPicker;
@property (nonatomic, strong) NSArray *pickerTitles;
@end
在.m中
- (void)viewDidLoad
{
[super viewDidLoad];
self.pickerTitles = @[@"ONE", @"TWO", @"THREE"];
self.customerPicker = [[UIPickerView alloc] initWithFrame:CGRectMake(0, 200, 320, 200)];
self.customerPicker.dataSource = self;
self.customerPicker.delegate = self;
[self.view addSubview:self.customerPicker];
}
-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 1;
}
-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
return self.pickerTitles.count;
}
-(NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
return [[self pickerTitles] objectAtIndex:row];
}
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
NSLog(@"Selected Row %d", row);
}
感谢所有帮助。
固定:
我所做的只是设置了视图控制器视图的背景色,现在它可以工作了。我认为这是一个错误,因为没有指出必须设置背景色。
设置视图的某些背景颜色(黑色除外),然后尝试,
self.view.backgroundColor=[UIColor yellowColor];
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句