2011-07-02 5 views
0

두 구성 요소 (선택보기에서 열)를 표시해야하지만 한 개만 표시해야하는 UIPicker가 있습니다.UIPickerView는 하나의 구성 요소 만 표시합니다. 두 개를 표시해야합니다

오류를 찾을 수 없습니다. 그것은 올바르게 구축됩니다. 두 번째 구성 요소는 비어 있습니다. 데이터가 표시되지 않습니다.

InstaEmailViewController.h

#import <UIKit/UIKit.h> 

@interface InstaEmailViewController : UIViewController 
<UIPickerViewDataSource, UIPickerViewDelegate> { 
    NSArray* activities_ ; 
    NSArray* feelings_ ; 
} 

InstaEmailViewController.m

#import "InstaEmailViewController.h" 

@implementation InstaEmailViewController 

- (void)dealloc 
{ 
    [activities_ release]; 
    [feelings_ release]; 
    [super dealloc]; 
} 

- (void)didReceiveMemoryWarning 
{ 
    // Releases the view if it doesn't have a superview. 
    [super didReceiveMemoryWarning]; 

    // Release any cached data, images, etc that aren't in use. 
} 

#pragma mark - View lifecycle 

// Implement viewDidLoad to do additional setup after loading the view, typically from a nib. 
- (void)viewDidLoad 
{ 
    activities_ = [[NSArray alloc] initWithObjects:@"sleeping", @"working", @"thinking",  @"crying", @"begging", @"leaving", @"shopping", @"hello worlding", nil]; 

    feelings_ = [[NSArray alloc] initWithObjects: @"awesome", @"sad", @"ambivalent", @"nauseous",@"psyched", @"confused", @"hopeful", @"anxious", nil]; 

    [super viewDidLoad]; 
} 

- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row  forComponent:(NSInteger)component { 
    if (component == 0) { 
     return [activities_ objectAtIndex:row]; 
    } else { 
     [feelings_ objectAtIndex:row]; 
    } 

    return nil; 
} 

- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView { 
    return 2; 
} 

- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent: (NSInteger)component { 
    if (component ==0) { 
     return [activities_ count]; 
    } else { 
     return [feelings_ count]; 
    } 
} 

@end 

답변

3

번째 컴퍼넌트 pickerView:titleForRow:inComponent: 방법에서의 값을 리턴하지 않는다.

if (component == 0) { 
    return [activities_ objectAtIndex:row]; 
} else { 
    [feelings_ objectAtIndex:row]; 
} 

당신은 무엇을해야

return [feelings_ objectAtIndex:row]; 
관련 문제