English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Android における src と background の違い詳細

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 の違いについての資料整理です。後続で関連資料を追加し続けます、皆様のご支援ありがとうございます!

おすすめ