4.0.1 でスムーズに動作するアプリケーションを 4.2.1 で実行しようとすると、画面が 20% 左に移動するなど、画面が歪んでいました。iOS 4.0.1 と 4.2.1 がインストールされている電話は 2 つの異なる電話です。何が問題なのですか?
サブビューとして追加した場所で、この問題が発生していることを確認しました。
ありがとう、サティシュ
view.autoresizingMask
あなたの説明から、正しい設定を適切に行っていないか、ビューのレイアウト方法に微妙な変化があると思います。
明示的に移動したビューのフレームを設定して、何が起こるかを確認してください。
[view setFrame:CGRectMake(0, 0, 320, 460)]
関連するコードやスクリーンショットの一部は間違いなく役立ちます。また、それは UIKit アプリケーションですか、それとも Cocos2D ゲームですか?
編集:コード (または簡略化されたサンプル バージョン) を提供できないため、私が使用しているコードをいくつか掲載します。
通常、親ビューを「埋める」ためにサブビューを追加するときは、次のことを行いました。
UIView *parent = nil; // find parent view
UIView *child = nil; // child view to add to parent
[parent addSubview:child];
CGRect frame = [parent frame];
frame.origin.x = 0;
frame.origin.y = 0;
[child setFrame:frame];
それでもうまくいかない場合は、問題が別の場所にある可能性があると思います (つまりlayoutSubviews
、何らかの理由で上書きされたことがありますか? または、電話がジェイルブレイクされたのでしょうか?)
UIKit のバグではないかと思いますが、完全に可能です。