私のアプリケーションの画像の正しい表示には依然として問題があります。だから私の最初のデバイス(5,2インチ& 480密度)でそれはよく見えます。第二の装置(5,5インチ& 420密度)で画像に関連するさまざまな画面サイズを理解する
画像が収まらないと、それは白い境界線を示しています。
これは私のレイアウトでImageViewのです:
<ImageView
android:id="@+id/iv_image"
android:layout_width="150dp"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@id/tv_topic" />
私はAndroid Blogでこれを読んだ後、描画可能フォルダ内のすべての私のイメージを置い:
を一般的に2がありますすべての画面DPIをターゲットにする方法。 1.最も簡単な方法 - すべての画像を超高または超高DPIにします。
デバイスがドロアブルDPIと一致しない場合、Androidはドロアブルを自動スケールします。唯一のドロアブルが高密度で作成されている場合は、低いDPI画面でレイアウトに収まるようにリソースをダウンスケールします。
私はすべてのイメージを可能な限り1つの解像度で描画可能なフォルダに実装しました。特定のフォルダにすべてを配置する必要がありますか(drawable-ldpi、drawable-mdpi ...)?つまり、常に同じサイズの画像が複数コピーされることになります。
はい、複数の画面を複数回サポートする公式のドキュメントを読んでいます。しかし、私はそれを理解するいくつかの問題があります。
問題は、画面の高さ:幅の比率が異なることです。あなたは常にスペースを埋めるためにあなたのイメージが必要です。したがって、異なる 'scaleType'を使って塗りつぶすか、イメージビューとその横のレイアウトに 'gravity'を使って、幅が常に埋められるようにします。 – zed
密度に特化したサイズにカットするのではなく、1つの大きな画像を使用することに注意してください。そうしないと、これが起こります。http://stackoverflow.com/questions/28346407/bitmap-to-large-to-be-uploaded- into-a-texture/28348286#28348286 – Budius
このようなハードコーディングサイズもエラーが発生しやすいです。 'dimens.xml'ファイルの使用をさらに見てください – Chisko