当前位置: 代码迷 >> Android >> 关于android布局的两个属性dither跟tileMode,background 平铺
  详细解决方案

关于android布局的两个属性dither跟tileMode,background 平铺

热度:85   发布时间:2016-04-28 04:20:11.0
关于android布局的两个属性dither和tileMode,background 平铺

首先,两个单词的中文意思分别是dither(抖动)和tileMode(平铺)

?

1,先来介绍tileMode(平铺)

它的效果类似于?让背景小图不是拉伸而是多个重复(类似于将一张小图设置电脑桌面时的效果)

?

[html]?view plaincopy
?
?
?
  1. <xml?version="1.0"?encoding="utf-8"?>??
  2. <LinearLayout??
  3. android:id="@+id/MainLayout"??
  4. xmlns:android="http://schemas.android.com/apk/res/android"??
  5. android:layout_width="fill_parent"??
  6. android:layout_height="fill_parent"??
  7. android:orientation="vertical"??
  8. android:background="@drawable/backrepeat"??
  9. >??


backrepeat.xml

[html]?view plaincopy
?
?
?
  1. <bitmap???
  2. ????xmlns:android="http://schemas.android.com/apk/res/android"???
  3. ????android:src="@drawable/repeatimg"???
  4. ????android:tileMode="repeat"???
  5. ????android:dither="true"?/>???


代码方式:

[java]?view plaincopy
?
?
?
  1. Bitmap?bitmap?=?BitmapFactory.decodeResource(getResources(),?R.drawable.icon);??
  2. BitmapDrawable?bd?=?new?BitmapDrawable(bitmap);??
  3. bd.setTileModeXY(TileMode.REPEAT?,?TileMode.REPEAT?);??
  4. bd.setDither(true);??
  5. view.setBackgroundDrawable(bd);??

2,再来解释下?dither(抖动)

?

Dither(图像的抖动处理,当每个颜色值以低于8位表示时,对应图像做抖动处理可以实现在可显示颜色总数比较低(比如256色)时还保持较好的显示效果:?Dither on Wikipedia

?
  相关解决方案