2011-08-08 19 views
3

上のすべて:1024のたときに計算された回転に延伸するように設定されている768x100ピクセルで最初である(パネルなど)の下部に自動サイズ変更私はUIScrollViewのサブビュー正しく配向変化

  • 1ページングスクロールビューを風景に。
  • 2つのサブビュー、それぞれ768x100ピクセルの大きさ。 1つは原点0,0にあり、もう1つは原点768,0にあります。ポートレートでは、ユーザーは左右にスワイプしてこれらのパネルを切り替えることができます。

私はランドスケープに回転すると、サブビューは自動サイズ調整が正しいにもかかわらず同じサイズのままです。また、同じ位置に留まります。つまり、右側のペインが右側から256ピクセル以内に表示されます。

自動修正を使用してこれを修正する方法はありませんか?手動でローテーションでサブビューを調整する必要がありますか?

+0

IBを使用している場合は、自動サイズ設定を使用して行うことができます。 –

+0

私はIBを使用しています。本気ですか?属性で遊びます。私は、自動サイズ設定を柔軟な幅と柔軟な高さに設定しました。私はまた、すべてのマージンを柔軟にしています。私は左の非屈曲を左手に、右の屈曲を右に設定してみることもできますが、まだサイズを変更する必要があります。 – Kalle

+0

待ちます。彼らはサイズ変更しています。あなたが正しい。 contentSizeを更新しないことが問題であるようです。回答として投稿しますか? – Kalle

答えて

-1

インターフェイスビルダーで自動サイズ設定を使用できます。

+0

私はこれをほとんどうまく動かすことができましたが、起源はまだ変わりません。サイズ変更がどのように表示されるべきなのか?私は幸運なことなく、フレキシブルを左右の周りにひっくり返そうとしました。ああ、私が何かが欠落していない限り、setFrame:をオーバーライドして新しい方向に合わせてcontentSizeを変更する必要があります。あなたはこれをしないのですか? – Kalle

+0

向きのすべての要素で自動サイズ設定を使用する場合は、フレームを設定する必要はありません。 –

+0

私は "set frame"とは言わなかった。私は "contentSize ON setFrameを変更する"と言った。...そして私は自動サイズ設定をしている。私はこれを手作業でやっていますが、実際には "ネイティブに"働いている例を見たいと思っています。 – Kalle

0

インターフェイスビルダーアプローチが動作しないか、あなたが再調整する必要がある複雑なサブビューを持っている場合は、あなたがこれを行うことができれば -

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation 
{ 
    if(interfaceOrientation == UIInterfaceOrientationLandscapeLeft || 
     interfaceOrientation == UIInterfaceOrientationLandscapeRight) 
    { 
     /* handle resizing here*/ 
    } 
    else if(interfaceOrientation == UIInterfaceOrientationPortrait || 
      interfaceOrientation == UIInterfaceOrientationPortraitUpsideDown) 
    { 
    } 
} 

私もcheck this

+0

サイズを変更する方法を知っています、ありがとうございます。質問はそれを行う方法ではなく、問題は私がそれをしなければならないかどうかである。あなたが入れているほど、より多くの「手動」の変更が必要になるので、その道を辿るのは悪い考えです。 – Kalle

+0

必ずしも両方の向きで最適な経験をユーザに与えるために、これを行うには苦労する必要があります。あなたがそれについて考えるならそれはそのマニュアルではありません。 Appleが「iOS上のアプリケーションを設計するためのヒューマンインタフェースガイドライン」でAppleが言及している点の1つです。 –

+0

本当ですか?私はガイドラインを見て、 "Handle Orientation Changes"の部分を読んで、ユーザーにこれをやるよう促すものは何も見ていません...もっと読んで、私が見つけたものを見てください。ありがとう。 – Kalle

0

限り、間違っている可能性が私は、サブビューを手動で調整する必要があることを知っています。 UIScrollViewのcontentSizeプロパティは、Span & Zoomに表示されるビューのサイズを定義するためです。通常、コンテナ(つまりスクロールビュー)サイズとは何の関係もありません。

関連する問題