私は自分のUIViewを持っています。それから、私はサブビューとしてUIScrollViewを持つサブUIViewを持っています。その後、UIScrollViewにはサブUIImageViewがあります。 UIScrollViewとUIImageViewは同じサイズです。それらは、サブビューのUIViewよりもはるかに大きくなっています。私はこれがスクロールの仕事をするだろうと仮定した。それはしません。スクロールビューを動作させるには何らかのコードが必要ですか?スクロールするUIScrollViewはスクロールしません!
答えて
あなたは、このケースであなたのサブビューのフレームサイズである合計スクロール可能なサイズを一致させるためにUIScrollView.contentSize
を設定する必要があります。
私はIBの私のscrollviewのすべてのコンテンツを配置。 (ボタン、ラベル、テキストフィールドなど)。フルサイズは500丈です。 それから、私はそれをIBの高さ436にリサイズしました。
は、その後のコードで、私はこれがあるのviewDidLoad置く:
optionsScrollView.contentSize = CGSizeMake(320,500);
だから、私はスクロールできる64個のピクセルを残します。それは完全に動作します。
また、私の.hファイルのための@interfaceの<>カッコ内に "UIScrollViewDelegate"を置き、IBのFile所有者にスクロールビューのデリゲートアウトレットを接続しました。
さらに、スクロールを有効にしましたか?あなたのフレームは、それは、あなたのコンテンツのサイズに設定されている場合は
フレーム
その後、
contentSize
ビューやオブジェクトなど...
:プロパティ
@property(nonatomic, getter=isScrollEnabled) BOOL scrollEnabled
スクロールビューはこれで作品の 見てスクロールしません。 だから(IB右側のパネルで - >最後から二番目のタブ「サイズインスペクタ」)あなたのフレームを設定し、あなたのアプリの長さに(私はナビゲーションバーとタブバーを持っているとして、私の場合には、それは367である)をプログラム的にcontentSizeを設定します - それがスクロールすることができますので、うん、あなたは...あなたのフレームよりもそれを推測。
これはほとんどに明白であるかもしれないが、私は私のUIScrollViewのは、私が「そうスクロールしないだろう、なぜ不思議年代を過ごした!!
幸せな日他の人に役立つ場合に私を止めていた投稿を投稿する:
UIScrollViewは、表示したい内容の目に見える範囲の寸法でなければならず、内容のサイズでなければならない。
私のためにばかげて私は知っていますが、もしそれが誰かを助けるならば、
'UIScrollView'は画面に表示させたいもののサイズで、scrollviewの' contentSize'プロパティはスクロールする領域のサイズ(内容)に設定する必要があります。 contentSizeがフレームサイズより小さいか等しい場合、スクロールビューはスクロールしません。 – Olie
受け入れ答えで述べたように、あなたはUIScrollView
のcontentSize
プロパティを設定する必要があります。
これは、Interface Builderで行うことができます。
- 選択スクロールビュー
- を選択して下の「ユーザー定義のランタイム属性」正しい
- 上のユーティリティペインの「アイデンティティを検査」「キーのパス」を設定し
- 「+」ボタンをクリックしてください( '{320、600}など)
ビルドして実行すると、スクロールビューがスクロールします。
コンテンツの挿入はスクロールには影響しません。 What's the UIScrollView contentInset property for?
スクロールビューが今日スクロールしていなかった理由を追加したいと思います。私はすべての私のサブビューをコードに正しく追加しました。 contentSizeを正しく設定しました。ユーザー操作が有効になりました。
私の問題はInterface Builderにありました。 UIScrollViewのサブビューとしてUIButtonを配置しました。そのボタンはスクロールビューをスクロールさせませんでした。 Interface Builderからボタンを削除してコード内でそのボタンを処理すると、スクロールビューがスクロールし始めました。
だからそこに行く。なぜそれがスクロールしていないのかを突き止めるときにチェックするもう一つのことがあります。 Interface Builderでサブビューを確認します。
ここで言及していない他の重要なことは、UIScrollViewがAutoLayoutでうまく再生できないということです。すべてが正しく行われたように見える場合は、ViewControllerに自動レイアウトがオンになっているかどうかを確認し、無効になっている場合はオフにします。
(あなたがスクロールするたびに、ビューが再レイアウトされたあるガク。!)
ので:
- はscrollviewの
contentSize
は確かAutoLayout
のために作るそのframe.size
- よりも大きいことを確認してくださいViewControllerはオフになります。
- 1. UIScrollViewはモーダルでスクロールしません。Swift
- 2. UIScrollViewはスクロールしませんか?
- 3. UIScrollViewはデバイス上でスクロールしません
- 4. UIScrollViewはスクロールしません(ストーリーボード)
- 5. UIScrollviewはスムーズにスクロールしません
- 6. UIScrollViewはスムーズにスクロールしませんか?
- 7. スクロールバーはスクロールしますが、UIScrollViewはスクロールしません。
- 8. UIScrollView:何もスクロールしません。
- 9. UIScrollVIewがスクロールしていません
- 10. UIScrollViewはスクロールできませんか?
- 11. UIScrollViewはまったくスクロールしません
- 12. UIScrollViewはズームするまでスクロールしません
- 13. UIScrollViewは、textFieldを押し始めるとスクロールしません。
- 14. UIScrollView内の水平UIStackViewはスクロールしません
- 15. UIScrollViewにUIPickerViewを追加すると、UIPickerViewはスクロールしません!
- 16. UIScrollViewはスクロールせず、正しい位置に表示されません
- 17. UIScrollviewを使用したUITapgestureはスクロールを停止しませんか?
- 18. 自動レイアウトの制約を追加しても、UIScrollViewはスクロールしません
- 19. Divのスクロール・スクロールはスクロールしません
- 20. UIScrollView内で完全にスクロールできません
- 21. UIScrollViewはsetZoomScaleに応答しません:
- 22. UIButtonはuiscrollViewで機能しません
- 23. UIButtonはUIScrollViewで対話しません
- 24. ComboBoxはUIScrollViewで動作しません
- 25. UIScrollViewに埋め込まれているとUIWebViewがスクロールしません
- 26. Swiftでプログラムで追加したときにUIScrollViewがスクロールしませんか?
- 27. UIScrollViewがスクロールしない
- 28. UIScrollView iOS11でスクロールしない
- 29. UIScrollViewのスクロール方向は?
- 30. RecyclerViewはスクロールしません
これはIBにないコードで行う必要がありますか? – Marty
私はそう思います。 IBでそれを見たことはありません。 – tia
ええ、setContentSizeで行う必要がありました: – Marty