A.Q*_*oga 47 android alpha-transparency drawable
容易就像自己.我想制作一个alpha按钮,这样就可以选择drawable:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Play/Pause -->
<item android:state_selected="false" android:drawable="@drawable/item" />
<item android:state_selected="true" android:drawable="@drawable/item" />
</selector>
Run Code Online (Sandbox Code Playgroud)
我想做这样的事情:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Play/Pause -->
<item android:alpha="125" android:state_selected="false" android:drawable="@drawable/item" />
<item android:alpha="255" android:state_selected="true" android:drawable="@drawable/item" />
</selector>
Run Code Online (Sandbox Code Playgroud)
谢谢大家.
Kas*_*ium 52
自OP以来已经有一段时间了,但个人发现了一个比我建议的答案更好的解决方案.创建BitmapDrawable可以轻松设置alpha:
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/your_drawble"
android:alpha="77">
</bitmap>
Run Code Online (Sandbox Code Playgroud)
Alpha可以是0到255之间的任何值.请注意,它是HEX颜色值alpha的倒数,例如70%alpha在HEX中为B3,在BitmapDrawable中为77.
Pra*_*ant 43
我使用drawable实现了同样的目标
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<solid android:color="#5000ddff" />
</shape>
Run Code Online (Sandbox Code Playgroud)
在这里使用alpha 50,它设置不透明度级别.希望有所帮助
Fre*_*alf 15
我一直在寻找同样的事情.即使这是四年前发布的,这是谷歌搜索问题的最高职位,所以我会在这里回复.
这是我的解决方案
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="false">
<bitmap android:alpha="@integer/not_pressed_alpha" android:src="@drawable/item"/>
</item>
<item android:state_pressed="true" android:drawable="@drawable/item" />
</selector>
Run Code Online (Sandbox Code Playgroud)
kik*_*tas 13
对于那些与OP有同样问题的人,AppCompat现在允许你设置'alpha'参数,正如他在目标代码中所希望的那样:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Play/Pause -->
<item android:alpha="125" android:state_selected="false" android:drawable="@drawable/item" />
<item android:alpha="255" android:state_selected="true" android:drawable="@drawable/item" />
</selector>
Run Code Online (Sandbox Code Playgroud)
更多信息在这里.
我认为没有办法做到这一点.有一个属性android:alpha
,但它适用于视图,而不是drawable.它自API级别11以来才可用.
小智 5
我的目标是让一个按钮在不同的 alpha 下具有选择和按下状态 - 但使用相同的 (png) 资源并影响尽可能少的文件。
我的解决方案类似于更改 BitmapDrawable 中的 alpha - 但它是从选择器中执行的,因此只有一个文件受到影响。
使用位图的色调功能,请记住色调会给现有像素着色,因此请使用白色。例如,#80FFFFFF - 保持颜色不变,但将 alpha 减少 50% 这也可用于在按下时更改图标的颜色。
这是我的可绘制 XML 文件:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true">
<bitmap
android:src="@drawable/ic_camera"
android:tint="#80FFFFFF">
</bitmap>
</item>
<item android:state_pressed="true">
<bitmap
android:src="@drawable/ic_camera"
android:tint="#80FFFFFF">
</bitmap>
</item>
<item>
<bitmap
android:src="@drawable/ic_camera">
</bitmap>
</item>
</selector>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
54286 次 |
最近记录: |