ページ 11

Andriodアプリの画面サイズ対応について

Posted: 2013年2月18日(月) 09:02
by rei
androidプログラミングの館からきました。
C言語ではなくJavaの質問となっておりますが、対応する掲示板が見つからなかったのでこちらで質問させていただくことをお許し下さい。

andriod機種の画面サイズが様々であるようなので、なるべくそれぞれの画面サイズに対応したアプリを作りたいのですが、どのようにしたら良いのか分からず困っています。
思いついた方法としては、
1:あらかじめ決められた区画に描写、その後そのキャンバスを画面いっぱいにまで引き伸ばす
2:あらかじめ決められた区画に描写、それを中央に寄せるようにして余白は黒等の色で塗りつぶす
3:画面サイズに合わせたオブジェクトを作る(例えば、自機の大きさは画面サイズの横幅の1/10など)
等がありますが、具体的な方法、またどれが一番都合が良いのか等が分かっておりません。

普通のViewですと自動的にサイズを調整してくれる機能があるようなので対応に困らないのですが、
ゲームを作る際にはどうしても描写の際に自分でピクセルを指定しなければならず、画面左上によってしまったりはみ出てしまったりします。

これの対処法について、どなたかご存知の方がいらっしゃいましたら教えていただけるとありがたいです。

Re: Andriodアプリの画面サイズ対応について

Posted: 2013年2月18日(月) 22:49
by _d
OpenGLを使って3D描画すれば、画面サイズが変わったところで関係ないですぜ☆
というのはまあ一つの例として、解像度の違いの前にまずは縦横比の違いですね。

これに関しては、Playストア等で見ていると、始めから小さい側に合わせて余白を取っているものが多いですね。(厳密に何対何だったかは忘れたのでそこは調べてもらうとして)

解像度の違いは、あくまで私の場合ですがdrawableのみにリソースを入れていると自動で伸長してくれるので、元リソースとの比率を計算してその分ピクセルをずらして描画したり、始めから画面内の比率を内部で座標として持っていて、描画メソッドが実際のピクセルを計算するような作りにしてますね。

Re: Andriodアプリの画面サイズ対応について

Posted: 2013年2月20日(水) 16:41
by ISLe
画面サイズの問題は、Androidに限らないですね。

いちばん楽なのは、オリジナルの解像度でオフスクリーンに描画して、デバイスに引き伸ばして表示する方法です。
ピクセルが荒くなったりボケたりする問題はありますが。

ピクセルを綺麗に見せたいなら工夫が必要になります。

Re: Andriodアプリの画面サイズ対応について

Posted: 2013年2月22日(金) 23:36
by rei
返信遅くなってしまい申し訳ありません!
やはり引き伸ばすか中央に揃えるのがいい感じですかね・・・
とりあえずお二方の方法で作ってみようと思います。
ご回答ありがとうございました!