4

シンプルな Android アプリを作成しました。1 つのアクティビティと 1 つのビューしかありません。

アプリは電話用に設計されました。すべての UI 要素の測定には「デバイスに依存しないピクセル」単位 (dp) を使用し、ほとんどのレイアウトには RelativeLayout を使用しました。アプリは小さな画面で見栄えがします。

大きな画面 (タブレットなど) では、すべての要素が小さく、ばらばらに広がっており、下部に大きな空きスペースがあります。確かに、UI 要素の物理的なサイズは、タブレットと携帯電話の間でほぼ同じであり、これは dp ユニットが約束するものですが、このアプリに実際に求めているものではありません。iPadでiPhoneアプリを実行して「2x」ボタンを押すときのように、インターフェース全体をできるだけ大きくして画面いっぱいに表示したいと思います.

これを行う最善の方法は何ですか?画面サイズごとに個別のビューを作成する必要がありますか? dp の代わりにピクセル (px) を使用する必要がありますか?

ありがとう。

4

1 に答える 1

1

測定値として px を使用するのは実際には悪いことです。新しいタブレットは高 DPI 画面を備えているため、100px は中スペックの携帯電話よりもタブレットで視覚的に小さくなります。

最適なオプションは、レイアウトのオーバーライド (layout-sw600dp、layout-sw700dp) を使用することです。スマートフォンのレイアウトを単純に拡大することは固くお勧めしませんが、近道をしたい場合は、スマートフォンのレイアウトを sw* フォルダーにコピーし、すべての dp 測定値を微調整するだけです。

また、以下を使用して、タブレットを縦向きモードにする必要があります。

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
于 2013-03-06T03:49:31.287 に答える