2011-12-29 12 views
0

私はスクロールビューを持っており、そのように初期化します。scrollViewを追加する

scrollV = [[UIScrollView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]]; 

後でアプリケーションでUIViewを追加し、UIViewでscrollViewの高さと幅を取得する必要があります。 (scrollViewの長さは非常に長くなりますので、値をハードコーディングできません)

私はこれを試しました。

justAnotherView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.scrollV.frame.size.width, self.scrollV.frame.size.height)]; 

ただし、スクロールビューのサイズ(スクロールビューの合計サイズ)は使用していません。画面の一部(幅320と高さ460)のみを表示します。私が上記で書いたscrollV初期設定ステートメントのためですか?どうすれば修正できますか?

あなたがjustAnotherViewのためにやったのと同じように、あなたがscrollVのポイントとその親への相対的なサイズを設定する必要があります。私はあなたがscrollVにサブビューとしてjustAnotherViewを追加したと仮定どの程度

justAnotherView = [[UIView alloc] initWithFrame:self.scrollV.frame]; 

答えて

1

:それは次のようになります。

... initWithFrame:CGMakeRect(0,0,scrollV.contentSize.width, scrollV.contentSize.height) ... 
0

。あなたが代わりにUIScrollViewののcontentSizeプロパティを使用したい場合があり

scrollV = [[UIScrollView alloc] initWithFrame:CGRectMake(0,0,parent.frame.size.width,parent.frame.size.height)]; 
+0

は 'CGRectMake(0、0、self.scrollV.frame.size.width、self.scrollV.frame.size.height)'と 'self.scrollV.frame'は同じではないでしょうか? – Illep

+0

全くありません。 XとYはscrollVと同じではありません。 –

+0

実際、彼がscrollVにサブビューとしてjustAnotherViewを追加した場合、justAnotherViewのxとyはその親に対して相対的なので、これは機能しません。 justAnotherViewが、実際にはサブビューとして追加された場合、Illepは適切な処理を行いました。 – Jeremy