我正在尝试在第三个方法中添加到此示例中的编辑视图控制器中;一个简单的领域选择视图。目前,我的pickerview有6个项目,我加载它。当我运行它时,它显示'?'对于选择器视图而不是单词的值。它确实选择了正确的项目/行并将其返回给调用控制器,但它不会显示文本。
我相信我没有正确地将数组分配给PickerView,因为它编译了以下警告:
"Incompatible Objective-C types assigning 'Struct NArrary *', expected 'struct UIPickerView *'"
这是我在.h文件中声明的内容:
UIPickerView *pickerView;
NSArray *choiceArray;
@property (nonatomic, retain) IBOutlet UIPickerView *pickerView;
@property (nonatomic, retain) NSArray *choiceArray;
在.m文件中:
choiceArray = [[NSArray alloc] initWithObjects:@"Financial",@"One",@"Two",@"three",@"four",@"six", nil];
pickerView = choiceArray; //<-- error
[choiceArray release];
就是这一行:“pickerView = choiceArray;” 我收到了警告。
THX, WES
答案 0 :(得分:0)
您正在将数组分配给pickerView属性本身。你这样做:
(UIPickerView*)pickerView = (NSArray*)choiceArray;
实际上,您从其委托中分配了一个选择器视图的行,该委托是一个实现UIPickerViewDelegate protocol的对象。