English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
ImageViewのXML属性srcとbackgroundの違い:
backgroundはImageViewコンポーネントが指定した長さと幅に合わせて伸縮しますが、srcは元の画像のサイズを保持しており、伸縮しません。srcは画像の内容(前景)で、bgは背景で、同時に使用できます。
さらに:scaleTypeはsrcに対してのみ作用します;bgは透明度を設定できます、例えばImageButtonではandroid:scaleTypeを使用して画像の拡大縮小方法を制御できます、以下の例のコードを参照してください:
<ImageView android:id="@+id/img" android:src="@drawable/logo" android:scaleType="centerInside" android:layout_width="60dip" android:layout_height=""60dip" android:layout_centerVertical="true"/>
説明:centerInside は画像を比例で縮小し、画像の長さ(幅)が視覚の対応する次元以下になるようにするという意味です。
注意:制御される画像はリソースではなく背景です、つまり android:src="@drawable"/logo"、android:background="@drawable" ではなく/logo"。プログラム中で画像を動的に読み込む場合も同様に、例えば:imgView.setImageResource(R.drawable.*); ただし imgView.setBackgroundResource(R.drawable.*);
附:詳細な scaleType 说明:
CENTER /CENTER を使って視覚中心に画像を表示し、画像を縮小しません
CENTER_CROP / centerCrop を使って画像を比例で縮小し、画像の長さ(幅)が視覚の対応する次元以上になるようにします
CENTER_INSIDE / centerInside を使って画像を比例で縮小し、画像の長さ(幅)が視覚の対応する次元以下になるようにします
FIT_CENTER / fitCenter を使って画像を視覚の最小側に比例で縮小し、中央に表示します
FIT_END / fitEnd を使って画像を視覚の最小側に比例で縮小し、下部分に表示します
FIT_START / fitStart を使って画像を比例で拡大します/視覚の最小側に縮小し、上部分に表示します
FIT_XY / fitXY を使って画像を視覚の大きさに縮小せずに表示します
MATRIX / matrix を使ってマトリックスで描画します
以上が Android src と background の違いについての資料整理です。後続で関連資料を追加し続けます、皆様のご支援ありがとうございます!