3

ポートレートモードでは問題ありませんが、ランドスケープモードでアプリを試してみると、どうあるべきかわかりません。この問題を解決するための一般的なアプローチは何ですか。最初のアイデアは、XとYの場所を置き換えることです。これをどのように行うべきかを追跡しますか?onDraw()関数の先頭でifステートメントを使用し、同じコード全体を2回記述する必要があります(1つはx、y用、もう1つはy、x用)?

4

2 に答える 2

1

描画呼び出しに絶対的な幅と高さを指定しているようです。たとえば、早い段階でmyWidth=480とmyHeight=800を保存し、この方法ですべての描画を行った場合、デバイスを回転させると、これらの幅と高さは適用されなくなります。

ここでの解決策は、サイズが変更されたコールバックをリッスンし、それに応じて幅と高さのアイデアをリセットすることだと思います。ビューに直接描画している場合は、View.onSizeChanged()をオーバーライドする必要があります。

于 2010-10-12T15:37:06.067 に答える
0

図面のX座標とY座標を入れ替える必要はありません。デフォルトでは、アプリが回転すると、座標系も回転します。

于 2010-10-11T17:06:36.807 に答える