3

UIViewControllerには と がUIScrollViewありUIViewます。これらは 2 つの異なるビューであり、UIView内部にないことを意味しUIScrollViewます。プログラムで設定して増やしているスクロールビューのビューが異なりますcontentSize。そして、これUIViewは隠されています、私は時々見せています。問題は、これを非表示にすると、スクロールUIViewが停止することです。UIScrollView

なぜこれが起こるのですか?

すべてのリーディング エッジを両方のスーパービューに設定しました。それは問題ですか?私を案内してください。

こんにちは、私は私のイメージを共有していますViewController Sceneここに画像の説明を入力

自動レイアウト(iOS6)を使用しています。Scroll View ContentSize私が設定している(768,1400)ですViewDidAppearView以下Scroll Viewは非表示で、Scroll View問題なくスクロールしています。

ロックを表示および非表示にするViewと、Scroll Viewスクロールできなくなります。それは私が直面している問題です。コンテンツのサイズを設定する以外に、コードで何もしていません。他に必要な情報があれば教えてください。

4

3 に答える 3

6

iOS 6のcontentSizeは、自動レイアウトでそれ自体を「自動サイズ」にします。これは、 を設定できないことを意味しますcontentSize。呼び出しで設定することを提案するハックがありますがviewDidAppear、私はこれを避けます。iOS 6 のリリース ノート(ページで を検索)を読むUIScrollViewと、いくつかの解決策が得られます。それらの 1 つはtranslatesAutoresizingMaskIntoConstraintsプロパティに関係します。

于 2013-02-22T17:29:20.833 に答える
5

スクロールビューのコンテンツ サイズのサイズ変更に関連するすべてのコードを削除します。Autolayout は、スクロール中にこれを使用します。これを行った後、次のコードを追加します

// Add 200 points to the bottom of the scroll view
[self.scrollView setContentInset:UIEdgeInsetsMake(0, 0, 200, 0)];
self.scrollView.translatesAutoresizingMaskIntoConstraints= NO;
于 2013-05-21T15:39:33.730 に答える
0

コードがなければ、推測を危険にさらします...

contentSizeこれは、のサイズを超えない場合に一般的UIScrollViewです。たとえば、ビューを非表示にしてから、スクロールビューのサイズを変更し、スクロールビューがを超えるか等しい場合は、スクロールcontentSizeするものがありません。

もう1つの可能性は、ユーザー操作を無効にしている場合です。

于 2013-02-22T16:52:10.157 に答える