Созданы разные классы для каждого из сборщиков, каждый из которых содержит своих собственных делегатов.Затем просто импортируйте их в мой класс mainController и инициализируйте их в методе viewDidLoad.
Вот решение, которое я использовал L
=========================== Найдено решение (обходное решение): ===========================
Во-первых, я создал 3 разных класса для моих 3 сборщиков, каждый с разным .xib.Добавил эти 3 средства выбора в класс моего основного контроллера:
// Не забудьте #import "YourClass.h" и создайте его экземпляр в файле .h вашего основного контроллера
objPickerVC = [[ObjectPickerViewController alloc] initWithNibName:@"ObjectPickerViewController" bundle:[NSBundle mainBundle]];
powerPickerVC = [[PowerPickerViewController alloc] initWithNibName:@"PowerPickerViewController" bundle:[NSBundle mainBundle]];
timePickerVC = [[TimePickerViewController alloc] initWithNibName:@"TimePickerViewController" bundle:[NSBundle mainBundle]];
CGRect rect1 = CGRectMake(5, 43, 100, 216);
objPickerVC.view.frame = rect1;
[self.view addSubview:objPickerVC.view];
CGRect rect2 = CGRectMake(110, 43, 100, 216);
powerPickerVC.view.frame = rect2;
[self.view addSubview:powerPickerVC.view];
CGRect rect3 = CGRectMake(215, 43, 100, 216);
timePickerVC.view.frame = rect3;
[self.view addSubview:timePickerVC.view];
Таким образом, у меня есть отдельные делегаты для каждого pickerView, что позволяет мне устанавливать их так, как мне нужно.
PS: Для позиционирования важно, чтобы в xib вашего pickerViews вы централизовали их в представлении,Если вы этого не сделаете, то при попытке их позиционирования -> CGRectMake (215, 43 ...), например, не будет в РЕАЛЬНОМ положении (215, 43 ...).Я знаю, это не имеет никакого смысла, но это ужасная ошибка и заставляет вас помещать это в испытания.Измените значение - запустите - измените - запустите, пока не получите правильное значение.