我有一个 UIPickerView 具有以下委托方法实现:
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView {
return 1;
}
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component {
return 2;
}
- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view {
if(!view)
{
view = [[[UILabel alloc] initWithFrame:CGRectMake(0, 0, 0, 37)] autorelease];
UILabel *label = (UILabel*)view;
label.autoresizingMask = UIViewAutoresizingFlexibleWidth;
label.textAlignment = UITextAlignmentCenter;
label.font = [UIFont boldSystemFontOfSize:24];
label.backgroundColor = [UIColor whiteColor];
view.userInteractionEnabled = NO;
}
((UILabel*)view).text = @"X";
return view;
这段代码在 iOS 5 中运行良好。也就是说,我得到了一个 UIPickerView,它有 2 行,上面有一个 X。然而,在 iOS4 下,即使调用了 3 个方法,当我显示 UIPickerView 时,内部也是空白的,就好像没有行存在一样。
有任何想法吗?