- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Xcodeで開発してますが。。)
Xcodeで開発している際にCGAffineTransformMakeScaleの動きがおかしい
このQ&Aのポイント
- Xcodeで開発している際に、CGAffineTransformMakeScaleの動きがおかしいです。ボタンが押されると、拡大/縮小のアニメーションをつけるプログラムを実行していますが、アニメーション中に位置がずれてしまいます。
- CGAffineTransformMakeScaleでX方向/Y方向に2倍拡大はできるのですが、左上からの座標も指定した分だけずれてしまいます。button.centerを変更しても解決しません。
- 問題の原因がCGAffineTransformMakeScaleの仕様なのか、プログラム自体が問題なのかわかりません。対処方法を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
おそらくAuto Layoutが関係していると思います。 もしAuto LauyoutがONなら試しにOFFにして 実行してみてください。 CGAffineTransformとAuto Lauyoutの併用は 私には難しすぎて手に負えません。
その他の回答 (1)
- Lchan0211b
- ベストアンサー率61% (573/930)
回答No.2
> Auto Lauyoutとはなんでしょうか。。。ググってもよくわかりません すみません。綴り間違えました。 「Auto Layout」です。 Auto Layoutについては、 https://codeiq.jp/magazine/2014/02/6035/ の説明がとりあえずわかりやすいと思います。 要するに部品の位置やサイズを自動調整する機能なのですが、 おそらくCGAffineTransformで座標変換した結果、Auto Layout の自動調整が変な方向に働くのだと思います。 昔はAuto Layoutによる部品配置調整なんてなかったですから、 それをOFFにしても作りたいものは作れます。 ただ、今後iPhone/iPadデバイスは画面サイズのバリエーションが どんどん増えて行きますから、Auto Layoutでどんな画面サイズ でも自動調整で部品をうまく配置できるようにしておけば、 将来の新画面サイズへの対応はやりやすくなると思います。
質問者
お礼
なるほど!わかりました。 丁寧な回答ありがとうございます。
お礼
ありがとうございます!!解消しました! Auto Lauyoutとはなんでしょうか。。。ググってもよくわかりません