数学的に制御されている場合、すべての座標を親ビューの寸法、特にデバイスの回転によって変化するプロパティ self.view.bounds を参照するのが最善の方法です。
次に、向きが変更されたときにインターフェイスを再描画する必要があります。これを行う良い方法は、メソッド内にあります。
-(void)viewWillLayoutSubviews
過去にCGメソッドを使用したカスタムビューがあった場合、最善の方法はすべてを境界に参照することです。このように、画面を回転させたり、iPhone で使用したりして画面サイズを変更すると、変更せずに動作します。
更新
(76.8, 512.0) にポイントがあると想像してください。これは正確に iPad で縦向き、幅の 10%、高さの 50% です。したがって、座標のすべてのペアについて、絶対数で使用する代わりに、親ビューの寸法の分数で置き換える必要があります。
// old drawing method
CGPoint oldPoint = CGPointMake(76.8, 512.0);
// new drawing method
CGFloat W = self.view.bounds.size.width;
CGFloat H = self.view.bounds.size.height;
CGPoint newPoint = CGPointMake(0.1 * W, 0.5 * H) // 76.8 = 0.1 * 768; 512 = 0.5 * 1024
この 2 番目のケースでは、方向を変更すると、境界が変更され、座標が新しい値を取得しますが、プロポーションは他の方向と同じで、水平方向に 10%、垂直方向に 50% になります。
あなたはアイデアを得る。