私はUICollectionView
プログラムでセットアップしており、すべてが正しいように見えますが、アプリをテストすると、垂直方向と水平方向の両方で非常に奇妙なスペースが得られます。LibraryViewController
コレクション ビューを設定する私のクラスは、ここにあります: LibaryViewController class . 私のLibraryCell
初期化は次のようになります。
- (id)initWithFrame:(CGRect)frame
{
NSLog(@"Init called");
NSLog(@"%@", NSStringFromCGRect(frame));
self = [super initWithFrame:frame];
if (self) {
// Initialization code
imageView = [[UIImageView alloc] initWithFrame:frame];
[self.contentView addSubview:imageView];
}
return self;
}
そのため、セルが設定されるたびに、フレームが何であるかを報告してもらいます。面白いことに、これらの値は正しいように見えます。フレームが適切な場所にあることを示す、ログ ファイルの一部は次のようになります。
2012-12-12 11:08:48.333 ARApp2[16330:907] Init called
2012-12-12 11:08:48.335 ARApp2[16330:907] {{10, 10}, {80, 120}}
2012-12-12 11:08:48.341 ARApp2[16330:907] Loaded image0.png
2012-12-12 11:08:48.349 ARApp2[16330:907] success
2012-12-12 11:08:48.352 ARApp2[16330:907] Init called
2012-12-12 11:08:48.354 ARApp2[16330:907] {{120, 10}, {80, 120}}
2012-12-12 11:08:48.358 ARApp2[16330:907] Loaded image1.png
2012-12-12 11:08:48.365 ARApp2[16330:907] success
2012-12-12 11:08:48.368 ARApp2[16330:907] Init called
2012-12-12 11:08:48.370 ARApp2[16330:907] {{230, 10}, {80, 120}}
2012-12-12 11:08:48.375 ARApp2[16330:907] Loaded image2.png
2012-12-12 11:08:48.382 ARApp2[16330:907] success
しかし、結果を画面で見ると、次のようになります。スクリーンショット このコレクションには 4 つの項目があります。最初の 3 つは最初の行にあるため、3 番目の行も見えません。次に、4 番目のものは次の行を開始しますが、私が望むよりもはるかに低くなります。なぜこれらの細胞がこれほどまでに離れているのかわかる人はいますか?