如何使用新数据重新加载选择器视图

时间:2010-12-18 16:40:53

标签: iphone uipickerview

我是第一次使用存储在数组中的值加载选择器视图。

我正在使用,

temp = [NSArray arrayWithObjects:@"Male", @"Female", nil];

- (NSString *)pickerView:addData titleForRow:(NSInteger)row
                                forComponent:(NSInteger)component {
    return [temp objectAtIndex:row];
}

但它显示了空的选择器视图。

4 个答案:

答案 0 :(得分:3)

你试过[somePickerVier reloadAllComponents];吗?

此外,正确的委托方法是- (NSString *)pickerView: (UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component

答案 1 :(得分:0)

确保设置委托和数据源?

如果没有,

您必须在.h文件中实现此功能

@interface YourView : UIViewController<UIPickerViewDelegate,UIPickerViewDataSource>

答案 2 :(得分:0)

你一直在使用autorelease数组 如果你想要

,你必须保留这个 你不喜欢这个

然后执行alloc和init

添加男性,女性...

temp = [[NSArray arrayWithObjects:@“Male”,@“Female”,nil] retain];

  • (NSString *)pickerView:addData titleForRow:(NSInteger)行                             forComponent:(NSInteger)component {

    return [temp objectAtIndex:row];

}

答案 3 :(得分:0)

你需要做一件事。将以下行添加到您的活动中:

{

myPicker.delegete=self;

myPicker.datasource=self;

}

当选择器视图因添加数据源而崩溃时也使用此方法。

[myPicker reloadAllComponents];