2010-11-23 6 views
1

写真を表示する画像ビュー、テキストを表示するテキストビューなど、基本的な線形レイアウトがあります。私のAndroidアプリ2全体をテストすると、表示されない画面はありません。しかし、私がQVGAエミュレータでテストすると、ビューの半分が画面から外れています。さて、私のテキストのいくつかは特定のサイズに定義されています。小さな携帯電話でアプリのクリッピングに関する問題を回避するにはどうすればよいですか?

私のXMLでpx(dipのみ)を使用することはありません。私はfill_parent、wrap_contentを必要とする場所で使用し、高さや長さを決して固定しません。それは私のテキストと、私は言う、textSize = 22dipを使用することができますか?私はなぜそれがすべてのサイズで動作しないのかに関するドキュメントを見つけることができませんでした。

一部のアプリは、画面サイズに合わせてプログラミングする必要がありますか?または私は何かを逃していますか?

ありがとうございます!

答えて

3

DIPは、流体レイアウト設計では実際には役立ちません。 DIPは、さまざまな画面の密度にわたって物が同じサイズに見えるようにしようとします。あなたのコードおよび/または起こるかのスクリーンショットがなければ

を(タイポグラフィにおけるポイントの概念を想像し)、あなたのプログラムに何が起こるかを判断するのは難しいですが、22dipテキストサイズは、おそらくその理由の一つである:

HDPIで
  1. 22dipテキストはなるだろう:LDPI 22 * 160分の240 = 33画素
  2. 22dipテキストはなるだろう:22 * 160分の120 = 16.5画素

QVGA上の設定がHDPIある場合、それは実際には文字の場合は33ピクセルの高さであり、これは1/10 oより多くを消費するスクリーンの高さ。

ところで、16:9のワイドスクリーン(垂直)はすべてスクロールせずに1つの画面に収まるかもしれませんが、QVGAはわずか3:2画面ですが、すべてが比例していても、

+0

それで、単純な解決策は、テキストをディップではなくdpに設定することでしょうか? – Sapp

+0

3:2の電話機が16:9の電話機に比例してフォーマットされるようにするにはどうすればいいですか? – Sapp

+0

実際これには良い解決策はありません。そして彼らは異なったふるまいをするべきです。あなたのデスクトップ上のインターフェイスとして、より多くのもの(機能)が必要ですが、SmartPhonesではなく、iPod Nanoのようなデバイスでさえも少なくなります。さまざまなDPIデバイスに応じて異なるレイアウトを開発できます。 http://developer.android.com/guide/topics/resources/providing-resources.html#AlternativeResources – xandy

関連する問題