9

各セクションに水平スクロールとヘッダーとフッターを備えた標準の FlowLayout クラスを使用する CollectionView があります。

フッター ビューとヘッダー ビューの間 (つまり、セクション間) はゼロ ピクセルになりました。それらの間に少しスペースを追加したいのですが、最初のセクションの上または最後のセクションの後ではありません。そのため、ヘッダー ビューとフッター ビュー自体にそのスペースを追加することはできません。

「interSectionSpacing」のようなものを期待していたでしょうが、どうやらそのような設定はありません。何か案は?

4

3 に答える 3

11

したがって、そのための設定はありません。これは私が最終的に得たものです:

ヘッダービューのコンテンツをヘッダービュー自体の下部に揃えるように設定したので、ヘッダービューをコンテンツよりも高くしても、表示される高さは同じように見えます(自動レイアウトを使用すると非常に簡単になります)。

次に、UICollectionViewFlowLayoutのこのデリゲートメソッドのセクションインデックスに応じて、ヘッダーの高さを設定します。


#define kHeaderHeight 42
#define kInterSectionMargin 8

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout referenceSizeForHeaderInSection:(NSInteger)section
{
    if (section == 0) {
        return CGSizeMake(0, kHeaderHeight);
    }
    return CGSizeMake(0, kHeaderHeight + kInterSectionMargin);
}

これで、セクション間に少しスペースができましたが、最初のセクションの前にはありません。

于 2012-10-10T16:02:52.980 に答える
0

Nibファイルでヘッダーとフッターの間隔を設定できます。「Collection View」の「Size Inspector」に移動し、Header Size Height を適切な値に設定します。

于 2012-10-05T16:46:44.303 に答える