高さ 1000 ピクセルのコンテンツを含むスクロール ビューがあり、ストーリーボード上で簡単にデザインできるようにレイアウトできるようにしたいと考えています。
プログラムで実行できることはわかっていますが、実際に視覚的に確認できるようにしたいと考えています。スクロール ビューをビュー コントローラーに配置するたびに、スクロールしません。希望どおりに動作させることは可能ですか、それともコードで行う必要がありますか?
ベストアンサー1
私は解決策を見つけるのに 2 時間を費やしたばかりであり、StackOverflow ではこの QA スタイルが許可されているため、自分で質問に答えています。
ストーリーボードでこれを機能させる方法を最初から最後まで説明します。
1: ビュー コントローラーに移動してをクリックしますAttribute Inspector
。
2: サイズをFreeform
「推定」から「」に変更します。
3: ストーリーボードのメイン ビューに移動します。スクロール ビューではなく、最上位レベルのビューに移動します。
4: クリックしてSize Inspector
、このビューを希望のサイズに設定します。私は身長を 1000 に変更しました。
これで、ストーリーボードにビューが設定され、スクロールの高さ全体を確認して簡単にデザインできるようになります。
5: スクロールビューにドロップして、ビュー全体を占めるように引き伸ばします。これで、サイズが 320,1000 のスクロールビューがビュー コントローラのビュー上に表示されるはずです。
次に、スクロールしてコンテンツを正しく表示する必要があります。
6: スクロールビューをクリックし、 をクリックしますIdentity Inspector
。
7: User Defined runtime attribute
KeyPath の付いた を追加しcontentSize
、SIZE と入力してコンテンツのサイズを入力します。私の場合は (320, 1000) です。
ストーリーボードにスクロール ビュー全体を表示したいので、スクロール ビューを引き伸ばし、フレームを 320,1000 にしましたが、これをアプリで機能させるには、スクロール ビューが表示されるサイズまでフレームを変更する必要があります。
8: Type RECT と 0,0,320,416 のruntime attribute
KeyPath を追加します。frame
これで、アプリを実行すると、フレームが 0,0,320,416 で、1000 までスクロールできるスクロールビューが表示されます。ストーリーボードでサブビューや画像などを希望どおりにレイアウトできます。その後、ランタイム属性によって適切に表示されます。これらすべてを 1 行のコードなしで実行できます。