他の人がすでに言ったように、 はUICollectionView
フロー レイアウトを使用して一方向にしかスクロールできません。ただし、カスタム レイアウトを作成したり、サード パーティのライブラリを使用したりしなくても、これは非常に簡単に実現できます。
ビューをストーリー ボードにレイアウトするときは、UICollectionView
埋め込みをUIScrollView
. scrollview を水平方向にスクロールするように設定し、UICollectionView
を垂直方向にスクロールするように設定します。次に、UICollectionView.delaysContentTouches
を true に設定して、タッチが に渡されUIScrollView
、コレクションビューをスクロールしようとしているとは思われないようにします。
を設定するときはUICollectionView
、そのサイズとセルのサイズを実際に希望するサイズ (実際の画面よりも広い) に設定し、それに応じて配置します。
今、UIViewController
このコードをビューのライフサイクルに入れます
- (void)viewDidLayoutSubviews {
self.myScrollView.contentSize = self.myCollectionView.frame.size;
}
あなたが説明していることを達成するためにあなたがしなければならないのは文字通りそれだけです。これで、スクロールビューで水平方向にスクロールしてセル全体を表示できるようになり、collectionView でセルを垂直方向にスクロールできるようになります。
楽しいプログラミング。