2017-03-27 13 views
1

UICollectionViewがプログラムで(つまりInterface Builderなしで)使用するための簡単なカスタムレイアウトを作成しようとしています。UICollectionViewカスタムレイアウト。補足ビューが表示されないか照会されない

私は、ドキュメントによると、すべての操作を行います。

  1. サブクラスUICollectionViewLayoutをし、私のレイアウト
  2. オーバーライドlayoutAttributesForSupplementaryView(ofKind elementKind: String, at indexPath: IndexPath)を準備し、対応するレイアウトを返すには、
  3. が、私は私の補足ビューを返すcollectionView(_ collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, at indexPath: IndexPath)実装を追加属性

私の問題は、どちらもcollectionView(_ collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, at indexPath: IndexPath)でもでもありません。が呼び出されているので、私は補足的なビューを見ることができません。

レイアウトと補足ビュー作成の両方の実装をダブルチェックしましたが、まだ動作させることができません。

答えて

3

補足ビューの属性を返すのは、明らかにlayoutAttributesForSupplementaryView(ofKind elementKind: String, at indexPath: IndexPath) -> UICollectionViewLayoutAttributes?で十分ではありません。

一つ

layoutAttributesForItem(at indexPath: IndexPath) -> UICollectionViewLayoutAttributes?

私のミスで私はレイアウトが返された値に補足ビューの属性を追加するとだけ戻ってレイアウトがlayoutAttributesForItem(at indexPath: IndexPath) -> UICollectionViewLayoutAttributes?

に細胞属性だったということでした補足意見の属性を返す必要がありますlayoutAttributesForItem(at indexPath: IndexPath) -> UICollectionViewLayoutAttributes?私のデータソースメソッドが呼び出され、補助ビューが返されました。

EDIT:この回答はiOS10 SDKを対象としています。以前のバージョンで試したことがありません

+0

フルコードを投稿できますか? –

+0

layoutAttributesForItem()? RECTのためではない? –

関連する問題