我是 iO 的新手,并尝试将选取器 UI 元素动态添加到 UI。在类 - UIPickerView 中,我没有看到任何将选择器添加到视图的方法。有没有人试过这样做?非常感谢。
问问题
1388 次
4 回答
0
您将选择器添加到视图中,就像您要添加的 UIView -> addSubview 方法一样。
UIPickerView *pickerView = [[UIPickerView alloc] initWithFrame:CGRectMake(0,200,320,200,)]];
pickerView.delegate = self;
[self.view addSubview:pickerView];
不要忘记设置它的委托并实现它以实现它的功能。
于 2013-04-23T05:35:08.757 回答
0
首先将内存分配给您的选择器视图。
UIPickerView *pickerView = [[UIPickerView alloc] initWithFrame:CGRectMake(0, 265, 320, 216)];
然后设置委托和数据源。
pickerView.dataSource=self;
pickerView.delegate=self;
之后将选择器视图添加到您的主视图。
[self.view addSubview:pickerView];
之后你应该实现pickerview的方法。
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 1;
}
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
return [array count];
}
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
return [array objectAtIndex:row];
}
我希望这会正常工作。
于 2013-04-23T05:41:53.113 回答
0
和其他的一样,你需要 alloc+initWithFrame。
UIPickerView *pickerView = [[UIPickerView alloc] initWithFrame:CGRectMake(0, 100, 0, 0)];
然后将其添加到您的目标视图。
[yourView addSubview:pickerView];
您还需要设置它的委托和数据源,这将在选择器视图中显示您的所有元素。
pickerView.dataSource=self;
pickerView.delegate=self;
和所有其他定制为:
pickerView.showsSelectionIndicator=YES;
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component {
return [array objectAtIndex:row];
}
于 2013-04-23T05:34:41.590 回答
0
我没有看到任何将选择器添加到视图的方法
UIPickerView 是 UIView 的子类,因此您可以使用与将任何子视图添加到视图中相同的方法,即-addSubview:
,如下所示:
UIPickerView *picker = [[UIPickerView alloc] initWithFrame:theFrame];
picker.delegate = self;
picker.dataSource = self;
[self.view addSubview:picker];
我在这里假设该代码位于视图控制器中,该控制器既充当了选择器的代表和数据源。
于 2013-04-23T05:39:07.580 回答