Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.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
Ios 在“我的视图”控制器中的两个选择器视图之间通信_Ios_Iphone_Objective C_Uipickerview - Fatal编程技术网

Ios 在“我的视图”控制器中的两个选择器视图之间通信

Ios 在“我的视图”控制器中的两个选择器视图之间通信,ios,iphone,objective-c,uipickerview,Ios,Iphone,Objective C,Uipickerview,在我的项目中,picker1中有两个类别(音频/tv)。当用户单击音频行时,选择器2中的以下列表应更改为(audio1、audio2、audio3),如果选择器1中选择了电视,则选择器2中的列表应更改为(tv1、tv2、tv3) 在下面的函数中我应该写什么 - (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component{ if ([[dev

在我的项目中,picker1中有两个类别(音频/tv)。当用户单击音频行时,选择器2中的以下列表应更改为(audio1、audio2、audio3),如果选择器1中选择了电视,则选择器2中的列表应更改为(tv1、tv2、tv3

在下面的函数中我应该写什么

- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component{
    if ([[devicecatogery objectAtIndex:row] isEqual:@"Audio"]) {
        NSLog(@"Audio is selected");
     }else if ([[devicecatogery objectAtIndex:row] isEqual:@"TV"]){
       NSLog(@"TV is selected");
    }    
    NSLog(@"selected row:%d , component:%d" , row,component);
    }
}

当您更改选择器1时,您可以使用
[picker2 selectRow:3 Uncomponent:0动画:否]
更改选择器2,并设置所需的值。

必须更改第二个选择器值数组。这是在以下方法中使用的数组:

- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
更改数组值后,必须按以下方式重新加载第二个选择器组件:

[secondPicker reloadAllComponents] /*or [secondPicker reloadComponent:0] if you have only one component*/

非常感谢你救了我一天。