24

UIViews の間にUICollectionViewCellsを追加しようとしていますが、どうすればそれができるのUICollectionViewかわかりません。私はこのようなことを達成しようとしています:

スクリーンショット

おそらく custom を作成する必要がありますUICollectionViewLayoutが、どこから始めればよいかわかりません。

4

4 に答える 4

0

セクションを使用していて、レイアウトがそれに適している場合は、セクションのヘッダーとフッターを使用できます。

しかし、あなたの図に基づいて、これらのビューを含むように UICollectionViewCell を定義するだけでよいようです。したがって、クラスを登録する場所:

[collectionView registerClass:[CollectionViewCell class] forCellWithReuseIdentifier:@"Cell"];

これらの境界線の画像を UICollectionView セル サブクラス (上記の場合は「CollectionViewCell」) に配置します。それが最も簡単なアプローチのようです。

これが私が使用するものです:

- (id)initWithFrame:(CGRect)frame
{
    self = [super initWithFrame:frame];
    if (self)
    {
        self.restorationIdentifier = @"Cell";
        self.backgroundColor = [UIColor clearColor];
        self.autoresizingMask = UIViewAutoresizingNone;
        const CGFloat borderWidth = 3.0f;
        UIView *bgView = [[UIView alloc] initWithFrame:frame];
        bgView.layer.borderColor = [UIColor blackColor].CGColor;
        bgView.layer.borderWidth = borderWidth;
        bgView.layer.cornerRadius = 6.0f;
        self.selectedBackgroundView = bgView;
    }
    return self;
}
于 2013-04-01T19:18:30.333 に答える
0

collectionView の背景が緑で contentView が白の場合、セル間にスペースがある水平線を取得できるように見えますmaximumLineSpacing。垂直方向のギャップは難しい部分ですが、contentView を工夫してminimumInteritemSpacingを慎重に設定すれば、それを得ることができます。

于 2013-04-03T02:47:18.673 に答える