【发布时间】:2015-03-29 01:54:07
【问题描述】:
我正在处理一个包含 3 列的选择器视图。我想从第二列中确定第三列的值。这是我的部分代码
- (void)viewDidLoad {
[super viewDidLoad];
Number=@[@"Trans",@"1st",@"2nd",@"3rd",@"4th",@"5th",@"6th",@"7th",@"8th",@"9th",@"10th",@"11th",@"12th"];
Season=@[@"Spring",@"Summer",@"Fall"];
Course=@[@"CHEM1100 General Chem I",@"CHEM2100 General Chem II",@"CHEM3511 Org Chem",@"CHEM3521 Org Chem II"];
// Course=@[@"Summer1",@"Summer2",@"Summer3"];
Course = [Course sortedArrayUsingSelector:@selector(compare:)];
Number =[Number sortedArrayUsingSelector:@selector(compare:)];
Season =[Season sortedArrayUsingSelector:@selector(compare:)];
}
这是我的问题,我怎样才能实现这样的目标
if (Season==@"Spring")
Course= @[@"CHEM1100 General Chem I",@"CHEM2100 General Chem II",@"CHEM3511 Org Chem",@"CHEM3521 Org Chem II"];
else if (Season==@"Summer")
Course=@[@"Summer1",@"Summer2",@"Summer3"];
对不起,我不知道用什么方法来完成代码。请问有什么办法吗?
为了显示列值,我使用以下代码:
- (IBAction)addCourse:(UIButton *)sender {
NSInteger numRow=[picker selectedRowInComponent:kNumComponent];//0=1st,1=2nd,etc
NSInteger SeaRow=[picker selectedRowInComponent:kSeaComponent];//0=fall,1=spring,2=summer
NSInteger CourseRow=[picker selectedRowInComponent:kCourseComponent];
NSString *num=Number[numRow];
NSString *season=Season[SeaRow];
NSString *course=Course[CourseRow];
NSString *msg=[[NSString alloc ]initWithFormat:@"%@ ",course];
_courseLabel.text=[msg substringToIndex:8];
}
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component{
if (component==kNumComponent)
return [Number count];
else if(component==kSeaComponent)
return [Season count];
else return [Course count];
}
【问题讨论】:
-
您当前的
titleForRow:/viewForRow:方法是什么样的? -
感谢林赛的回复。请检查我的更新
标签: ios ios7 uipickerview