2016-09-15 5 views
0

現在、いくつかのUIScrollViewを必要とするSwiftアプリケーションで作業していますが、すべてのデバイスサイズで動作するようにいくつかの問題が発生しています。この状況でUIScrollViewのスクロールを有効にする

、私はすべてのiPhone 4または5

に必ずしもないiPhone 6に表示されるだろうが、私はいくつかのコンテンツおよびIで設定スクロールビューを持っているコンテンツを持っているでしょう完全なコンテンツが表示されない場合にのみ、スクロール可能にします。

特定の要素が表示されているかどうかを検出する方法はありますか?

+1

スクロールビュー内にビューを追加し、スクロールビューに直接追加するのではなく、そのビュー内にすべてのコンポーネントを追加することをお勧めします。ビューの高さを非常に大きく保ち、高さを固定し、ビューのプロパティとして制約を設定して、プログラムで調整できるようにします。最後のコンポーネントposition.y + heightを決定して、scrollviewのview = contentviewの高さを計算します。それでおしまい。 – iphonic

+0

特定の要素のy位置と高さをどのように取得できますか? –

+1

これは非常に簡単です。通常、スクロールビューの最後のコンポーネントは最後にビュー階層に追加されます。したがって、あなたは 'id lastComponent = [[self.scrollView subviews] lastObject];を実行します;' XIBからコンポーネントを手動で追加する場合は、最後のコンポーネントを選択して前面に変更して最後のコンポーネントにするか、最後の要素の一意のタグを取得し、 '[self.scrollView viewWithTag:TAG]タグで取得します。 – iphonic

答えて

0

デフォルトではscrollView.isScrollEnabled = trueです。コンテンツがscreenより大きい場合、ユーザーはスクロールすることができます。

関連する問題