Я хотел заполнить ячейки UICollectionView.Я создал пользовательскую ячейку, которая состоит из Label и TextFiled, чье inputView я изменил программно на UIPickerView, так что он будет вести себя как pickerview, мой вопрос: у меня есть пользовательские ячейки .h и .m файл, и у меня есть один класс Controller, collectionview этоработает нормально, но я не могу добавить данные в UIPickerview, так как они находятся в отдельном файле .h, поэтому его методы делегирования и источники данных будут в его файле .m.
Но мои данные находятся в основном классе VC. Как это сделать?Я заполняю представление выбора из VC?
Я новичок в задаче c, и извините, если не объяснил свою проблему ясно
Я уже пытался получить ячейку в своем классе VC и заполнить представление выбора ячейки в VCкласс, но это не будет работать, потому что я не могу получить доступ к полям ячейки за пределами - (__kindof UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{}
метод.
- (NSInteger)numberOfComponentsInPickerView:(nonnull UIPickerView *)pickerView {
return 1;
}
- (NSInteger)pickerView:(nonnull UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component {
if(pickerView.tag==0){
return outboundBaggages.count;
}
return 0;
}
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component{
if(pickerView.tag==0){
NSString *key = [NSString stringWithFormat:@"%ld",(long)row];
ssrDescription = listOfOutboundSSR[key];
//cell.ssrTextField.text = listOfOutboundSSR[key];
//above line should be the right but it is field of cell and i
//can not access it outside of collectionview's method
}
}
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component{
if(pickerView.tag==0){
NSString *key = [NSString stringWithFormat:@"%ld",(long)row];
return listOfOutboundSSR[key];
}
return nil;
}