Answers:
没有,没有,看怎么样“相关的XML属性”部分丢失了在ImageView.setAlpha(INT)文档。替代方法是使用View.setAlpha(float),其XML对应项是android:alpha
。它的取值范围是0.0到1.0,而不是0到255。
<ImageView android:alpha="0.4">
但是,后者仅在API级别11起可用。
它比其他响应要容易。有一个alpha
采用双精度值的xml 值。
android:alpha="0.0"
多数民众赞成在看不见
android:alpha="0.5"
透视
android:alpha="1.0"
完全可见
就是这样。
setAlpha(float)
且android:alpha
只有自API 11(Android 3.0的)。以前的API 11必须使用代码来设置图像的Alpha。正如sschuberth在前面的分析中所述。
我不确定XML,但是可以通过以下方式通过代码来实现。
ImageView myImageView = new ImageView(this);
myImageView.setAlpha(xxx);
在API 11之前的版本中:
在API 11+中:
alpha
在各种大小和位置都没有XML属性的情况下,为什么没有XML对应物是没有意义的。
也许是纯色背景的有用替代方法:
将LinearLayout放在ImageView上,然后将LinearLayout用作不透明度滤镜。在下面的一个带有黑色背景的小示例中:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FF000000" >
<RelativeLayout
android:id="@+id/relativeLayout2"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<ImageView
android:id="@+id/imageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/icon_stop_big" />
<LinearLayout
android:id="@+id/opacityFilter"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#CC000000"
android:orientation="vertical" >
</LinearLayout>
</RelativeLayout>
在#00000000(完全透明)和#FF000000(完全不透明)之间改变LinearLayout的android:background属性。
请使用android:alpha = 0.5达到50%的不透明度,并将Android材质图标从黑色变为灰色。
可以使用以下十六进制格式#ARGB或#AARRGGBB设置Alpha和颜色。参见http://developer.android.com/guide/topics/resources/color-list-resource.html
ImageView.setAlpha(int)
花了int
一段android:alpha
时间才花时间,所以严格来说,后者并不是前者的确切XML对应物,而是与的对应物View.setAlpha(float)
。并且正如这里已经多次提到的,android:alpha
/View.setAlpha(float)
仅从API级别11开始可用。