Android 和设置(图像)视图 alpha

真的没有与 setAlpha(int)相对应的 XML 属性吗?

如果没有,还有什么选择?

245597 次浏览

我对 XML 不是很确定,但是您可以通过以下方式编写代码。

ImageView myImageView = new ImageView(this);
myImageView.setAlpha(xxx);

在空气污染指数预测前11:

  • 范围从0到255(含) ,0是透明的,255是不透明的。

在 API 11 + :

  • 范围从0f 到1f (含) ,0f 是透明的,1f 是不透明的。

可以使用以下十六进制格式 # ARGB 或 # AARGGBB 设置 alpha 和颜色。 请参阅 href = “ http://developer.android.com/guide/subject/resources/color-list-resources. html”rel = “ nofollow”> http://developer.android.com/guide/topics/resources/color-list-resource.html

也许对于 普通的颜色背景来说,这是一个有用的替代方案:

图片浏览上放置一个 线性布局,并使用 线性布局作为不透明过滤器。下面是一个黑色背景的小例子:

<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>

# 0000000(完全透明)和 # FF00000(完全不透明)之间改变 线性布局背景属性。

没有,请参见 SetAlpha (int)文档中的“相关 XML 属性”部分是 失踪了。另一种方法是使用 SetAlpha (float),它的 XML 对应物android:alpha。它的范围是0.0到1.0,而不是0到255。使用它例如

<ImageView android:alpha="0.4">

但是,后者仅在 API 级别11以后才可用。

这比其他反应容易多了。 有一个 xml 值 alpha采用双重值。

看不见的 android:alpha="0.0"

android:alpha="0.5"透明的

android:alpha="1.0"完全可见

就是这样。

将此表单用于古代版本的机器人。

ImageView myImageView;
myImageView = (ImageView) findViewById(R.id.img);


AlphaAnimation alpha = new AlphaAnimation(0.5F, 0.5F);
alpha.setDuration(0);
alpha.setFillAfter(true);
myImageView.startAnimation(alpha);

现在有一种 XML 替代品:

        <ImageView
android:id="@+id/example"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/example"
android:alpha="0.7" />

是: 机器人: alpha = “0.7”

值从0(透明)到1(不透明)。

使用 Android: alpha = 0.5来达到50% 的不透明度,并将 Android 的材质图标从黑色转为灰色。

从 API 16: Android 4.1开始就不推荐使用 setAlpha(int)

请改用 setImageAlpha(int)

要减少 XMLAndroid 中任何东西的不透明性,请使用 Attribute Alpha。 例如:

android:alpha="0.6"

您必须输入0.0到1.0之间的值(以点为单位)。