我有2行的uipickerview,我需要自动填充它们。第一排:从150到210,第二排:从40到130。有人可以帮我吗?
我的代码:

- (void)viewDidLoad {

    NSArray *ar1 = [[NSArray alloc]initWithObjects:@"150", @"151", @"152", nil];
    self.array1 = ar1;
    [ar1 release];

    NSArray *ar2 = [[NSArray alloc]initWithObjects:@"40", @"41", @"42", nil];
    self.array2 = ar2;
    [ar2 release];

        [super viewDidLoad];

}

最佳答案

您应该使用for循环。代码:

NSArray *ar1 = [NSArray array];
for (int i = 150; i <= 210; i++)
    ar1 = [ar1 arrayByAddingObject:[NSString stringWithFormat:@"%d",i]];
[ar1 retain];
self.array1 = ar1;

NSArray *ar2 = [NSArray array];
for (int j = 40; j <= 130; j++)
    ar2 = [ar2 arrayByAddingObject:[NSString stringWithFormat:@"%d",j]];
[ar2 retain];
self.array2 = ar2;

编辑:最好使用NSMutableArray代替。
NSArray *ar1 = [[NSMutableArray alloc] init];
for (int i = 150; i <= 210; i++)
    [ar1 addObject:[NSString stringWithFormat:@"%d",i]];
self.array1 = ar1;

NSArray *ar2 = [[NSMutableArray alloc] init];
for (int j = 40; j <= 130; j++)
    [ar2 addObject:[NSString stringWithFormat:@"%d",j]];
self.array2 = ar2;

07-28 03:56