1

の半分を使用したい通常のビューを作成しましたUICollectionView。ビューにドラッグしてサイズを変更しUICollectionViewました。新しいビューをドラッグしてUICollectionViewCellデザインしました(すべてXCodeのレイアウトビルダーで)。

UICollectionViewCellクラスが呼び出されるImageCellので、イベントviewDidLoadでセルクラスをUICollectionView:に登録しました。

[self.imagesCollectionView registerClass:[ImageCell class] forCellWithReuseIdentifier:@"ImagePhotoCell"];

これは、画像をコレクションビューセルにロードしようとする方法です。

- (UICollectionViewCell*)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{
ImageCell *imageCell = [imagesCollectionView dequeueReusableCellWithReuseIdentifier:@"ImagePhotoCell" forIndexPath:indexPath];
imageCell.CellImageView.image = [UIImage imageNamed:@"IMG_2284.JPG"];
return imageCell;

}

CellImageViewです。IBOutlet_ UIImageView同じ画像を読み込もうとしていることはわかっています。これはテスト専用です。画像はSupportingFilesフォルダーに保存されます。

問題は、私が得るのは黒い画面だけです。画像は表示されません。通常のImageViewでも同じことをしようとしたので、画像が正しく読み込まれていることがわかりました。

4

1 に答える 1

3

同様の問題がありましたが、NIB がロードされていないことが原因のようです。viewDidLoad 登録呼び出しを次のように置き換えてみてください。

UINib *cellNib = [UINib nibWithNibName:@"nibFileName" bundle:nil];
[self.imagesCollectionView registerNib:cellNib forCellWithReuseIdentifier:@"ImagePhotoCell"];
于 2012-11-13T16:26:06.017 に答える