[解決済み] UICollectionViewがIndexPathのセルまで自動スクロールする件
2022-05-17 23:20:12
質問
コレクションビューを読み込む前に、ユーザーがコレクションビューの配列に画像の数を設定します。すべてのセルが画面に収まらない。30個のセルがあるのですが、画面に6個しか表示されません。
質問です。UICollectionViewの読み込み時に、目的の画像のあるセルまで自動的にスクロールさせるにはどうしたらよいでしょうか?
どのように解決するのですか?
でスクロールすることがわかりました。
viewWillAppear
でのスクロールは、コレクションビューがまだレイアウトを完了していないため、確実に動作しない可能性があることがわかりました。
でのスクロールは
viewDidAppear
でスクロールすると、スクロールしていないビューが一瞬だけ表示されることもわかりました。
また、いちいちスクロールして
viewDidLayoutSubviews
を毎回スクロールする場合、コレクションレイアウトによってはスクロールするたびにサブビューレイアウトが発生するため、ユーザーは手動でスクロールすることができなくなります。
以下は、私が確実に機能することを発見したものです。
Objective Cです。
- (void)viewDidLayoutSubviews {
[super viewDidLayoutSubviews];
// If we haven't done the initial scroll, do it once.
if (!self.initialScrollDone) {
self.initialScrollDone = YES;
[self.collectionView scrollToItemAtIndexPath:self.myInitialIndexPath
atScrollPosition:UICollectionViewScrollPositionRight animated:NO];
}
}
スウィフト.
override func viewWillLayoutSubviews() {
super.viewWillLayoutSubviews()
if !self.initialScrollDone {
self.initialScrollDone = true
self.testNameCollectionView.scrollToItem(at:selectedIndexPath, at: .centeredHorizontally, animated: true)
}
}
関連
-
XCode のコンパイル例外を解決する clang: error: linker command failed with exit code 1
-
[解決済み] アトミック属性と非アトミック属性の違いは何ですか?
-
[解決済み] Objective-Cで、ある文字列が他の文字列を含んでいるかどうかを調べるにはどうすればよいですか?
-
[解決済み] 文字列の長さを取得する
-
[解決済み] 奇妙な不要なXcodeログを隠す
-
[解決済み] iPhone UITextField - プレースホルダーの文字色を変更する
-
[解決済み] UITextViewのサイズをコンテンツに合わせるには?
-
[解決済み] テキストフィールドを移動する方法(次へボタン/完了ボタン)
-
[解決済み] 「GCC使用時に「Xcode/iOSのライセンスに同意するには管理者権限が必要です。rootでsudoを使用して再実行してください。
-
[解決済み] UICollectionView、全幅のセル、オートレイアウトの動的な高さを許可しますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
クラッシュエラー libc++abi.dylib: NSException 型のキャッチできない例外で終了_allanGold のブログ - ProgrammerITS401
-
dyld: ライブラリがロードされていません。エラーの解決
-
[解決済み] カスタムオブジェクトを含むNSMutableArrayをソートするにはどうすればよいですか?
-
[解決済み] 文字列の長さを取得する
-
[解決済み] iOS - UITextFieldの外側をタッチするとキーボードが外れる。
-
[解決済み] NSOperationとGrand Central Dispatchの比較
-
[解決済み] CocoaPodsの最新バージョンにアップデートしますか?
-
[解決済み] UIViewの角丸とドロップシャドウ?
-
[解決済み] 16進カラーバリューの使用方法
-
[解決済み] Swiftで配列に要素を追加する