Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone UIPickerView多方向返回加载视图的正确选择器_Iphone_Objective C_Ios_Ipad - Fatal编程技术网

Iphone UIPickerView多方向返回加载视图的正确选择器

Iphone UIPickerView多方向返回加载视图的正确选择器,iphone,objective-c,ios,ipad,Iphone,Objective C,Ios,Ipad,好的,这是我的问题。我有一个视图,在设备旋转时将另一个视图作为子视图加载。这是完美的工作。现在我的问题是,我在每个方向的视图上都有一个PickerView,该视图有分配给它们的出口,我实现的原因正如这里所建议的:我遇到的问题是,当我填充PickerView时,数据没有通过 if(pickerView == pickerType) { return [myHelper.types objectAtIndex:row]; }else if(pickerView == pickerTown){

好的,这是我的问题。我有一个视图,在设备旋转时将另一个视图作为子视图加载。这是完美的工作。现在我的问题是,我在每个方向的视图上都有一个PickerView,该视图有分配给它们的出口,我实现的原因正如这里所建议的:我遇到的问题是,当我填充PickerView时,数据没有通过

if(pickerView == pickerType) {
    return [myHelper.types objectAtIndex:row];
}else if(pickerView == pickerTown){
    return [myHelper.towns objectAtIndex:row]; 
}else
{
    return @"";
} 
据我所知,当我执行此代码时:

- (UIPickerView *) pickerTown
{
    if(self.landscapeView.superview)
    {
        return self.landscapePickerTown;
    }else
    {
        return self.portraitPickerTown;
    }
}

我将能够在正确的视图上访问选择器。但由于某种原因,它不起作用,我可能做错了什么。请提供帮助。

这可能不是最好的方法,但在添加数据时,请执行以下操作

if(pickerView == landscapePickerType || pickerView == portraitPickerType) {
    return [myHelper.types count];   
}else if(pickerView == landscapePickerTown || pickerView == portraitPickerTown){
    return [myHelper.towns count];
}else
{
    return 0;
}

关于

检查您与文件所有者的连接是否建立,以及uipickerview的代理。@robin好的,我的连接建立,我已经检查过了。可能是这样的,pickerFrom是肖像pickerFrom和景观pickerFrom的包装器,但没有为其指定出口。我相信这是正确的,因为当我访问pickerFrom时,它需要返回当前视图的出口。