【发布时间】:2012-01-01 00:15:11
【问题描述】:
我有两个 UIPickerView 需要转到不同的数据源。我能找到的最接近的答案是: Multiple UIPickerViews
但我不知道该怎么做:
您可以创建两个类 - 每个选择器视图一个数据源,并在 viewDidLoad 方法中手动将它们分配给选择器视图实例
看似简单,但代码确实用了一个例子。
【问题讨论】:
标签: uipickerview
我有两个 UIPickerView 需要转到不同的数据源。我能找到的最接近的答案是: Multiple UIPickerViews
但我不知道该怎么做:
您可以创建两个类 - 每个选择器视图一个数据源,并在 viewDidLoad 方法中手动将它们分配给选择器视图实例
看似简单,但代码确实用了一个例子。
【问题讨论】:
标签: uipickerview
您需要为数据源创建两个类。它们显然应该从NSObject 派生并实现UIPickerViewDataSource 协议。
现在您应该将这些类绑定到您的UIPickerView。最简单的解决方案是将每个数据源的实例变量添加到UIViewController,初始化它们并分配给UIPickerView 的dataSource 属性。
@interface MyViewController
{
...
MyDataSource1 *dataSource1;
MyDataSource2 *dataSource2;
}
...
@implementation MyViewController
- (id) initWith...
{
...
dataSource1 = [[MyDataSource1 alloc] initWithSmth:smth];
dataSource2 = [[MyDataSource2 alloc] initWithSmthElse:smthElse];
return self;
}
- (void) viewDidLoad
{
...
myPickerView1Outlet.dataSource = dataSource1;
myPickerView2Outlet.dataSource = dataSource2;
}
【讨论】: