Вот сделка:
У меня есть UICollectionView, который заполняет себя массивом объектов. Я хочу иметь возможность коснуться одного из представлений, представляющих объект в моем представлении UICollection, и перейти к новому представлению, отображающему детали объекта, который я выбрал в UICollectionView (например, идентификатор выбранного объекта).
К сожалению, все, что я пытаюсь установить, всегда равно нулю!
Вот объект:
@interface obj : NSObject
@property (nonatomic, strong) NSString *objId;
...
@property (nonatomic, strong) NSString *imageURL;
@end
Вот главный контроллер представления:
@interface ViewController : UIViewController <UICollectionViewDelegate, UICollectionViewDataSource, UICollectionViewDelegateFlowLayout>
@property (weak, nonatomic) IBOutlet UICollectionView *badgesCollectionView;
@property (strong, nonatomic) NSArray *objArray;
...
@end
Вот подробный вид:
@interface DetailViewController : UIViewController
@property (weak, nonatomic) IBOutlet UILabel *objId;
@end
Здесь я пытаюсь заполнить подробное представление (в моем основном ViewController.m)
// Implement action for object selection
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{
DetailViewController *detailView = [[DetailViewController alloc] init];
detailView.objIdLabel.text = [[self.objArray objectAtIndex:indexPath.row] objId];
[self.navigationController pushViewController:detailView animated:YES];
NSLog(@"Object Selection: Report");
NSLog(@"Label Text : %@", detailView.objId.text);
NSLog(@"Id of object : %@", [[self.objArray objectAtIndex:indexPath.row] objId]);
}
Когда я выбираю объект в UICollectionView, я получаю переход к detailView без каких-либо заполнений. Вот что записано:
Object Selection: Report
Label Text : (null)
Id of object : f0f47920-f449-4fd0-a74e-804546905437
Любое понимание этого было бы фантастическим. Спасибо!