Я хотел бы создать довольно сложную строку в моем UIPicker. Все примеры, которые я видел, создают вид с нуля примерно так ...
- (UIView *) pickerView:(UIPickerView *)pickerView
viewForRow:(NSInteger)row
forComponent: (NSInteger)component reusingView:(UIView *)view
{
CGRect cellFrame = CGRectMake(0.0, 0.0, 110.0, 32.0);
UIView *newView = [[[UIView alloc] initWithFrame:cellFrame] autorelease];
newView.backgroundColor = [UIColor colorWithRed:1.0 green:0.0 blue:1.0 alpha:1.0];
return newView;
}
Это в основном работает, показывает фиолетовый прямоугольник в моей сборщике.
Но я бы хотел иметь возможность загружать элемент pickerView из файла NIB, например ...
- (UIView *) pickerView:(UIPickerView *)pickerView
viewForRow:(NSInteger)row
forComponent: (NSInteger)component reusingView:(UIView *)oldView
{
NSArray * nibs = [[NSBundle mainBundle] loadNibNamed:@"ExpenseItem" owner:self options:nil];
UIView *newView = [nibs objectAtIndex:0];
return newView;
}
Это приводит к пустому белому экрану, который больше не показывает сборщик. Я могу просто сделать это первым способом и выстроить свои подпредставления в коде, но здесь, очевидно, происходит что-то, чего я не понимаю. Кто-нибудь знает?