Android RemoteView Alpha 问题
我想以编程方式更改远程视图中图像视图的 alpha 值,但它根本没有效果。
我如何分配它:
v.setInt(vR.id.imageView, "setAlpha", alpha);
我如何声明它:
<ImageView
android:id="@+id/widget_agenda_bg_dark"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_margin="5dip"
android:src ="@drawable/background"
android:scaleType="fitXY"/>
资源背景是一个形状:
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<stroke android:width="0dp" android:color="#FFFFFFFF" />
<gradient android:startColor="#FF000000" android:endColor="#FF7A7A7A"
android:angle="315"/>
<corners android:bottomRightRadius="7dp" android:bottomLeftRadius="7dp"
android:topLeftRadius="7dp" android:topRightRadius="7dp"/>
</shape>
一切都正确显示并且不会抛出任何错误,但它仍然不会改变 alpha 值... 有什么想法吗?
I would like to change the alpha programmatically value of my image view inside my remote view but it has no effect at all.
how i assign it:
v.setInt(vR.id.imageView, "setAlpha", alpha);
how i declare it:
<ImageView
android:id="@+id/widget_agenda_bg_dark"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_margin="5dip"
android:src ="@drawable/background"
android:scaleType="fitXY"/>
the ressource bg is a shape:
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<stroke android:width="0dp" android:color="#FFFFFFFF" />
<gradient android:startColor="#FF000000" android:endColor="#FF7A7A7A"
android:angle="315"/>
<corners android:bottomRightRadius="7dp" android:bottomLeftRadius="7dp"
android:topLeftRadius="7dp" android:topRightRadius="7dp"/>
</shape>
everything got diplayed correctly and doesnt throw any error, but still it dont changes the alpha value ...
Any idea?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我不知道 setInt 方法,但您在渐变中使用 android:startColor="#FF000000" ,其中前两个字母“FF”用于不透明度,其他六个字母定义十六进制颜色。
如果你声明 android:startColor="#00000000" 你的 startColor 将完全不可见,而像 android:startColor="#80000000" 这样的东西会有点透明。
I don't know about the setInt method, but you're using android:startColor="#FF000000" in you gradient where the first two letters "FF" are for the opacity and the six others define the hex color.
If you declare android:startColor="#00000000" your startColor will be completely invisible and something like android:startColor="#80000000" will be a little transparent.