我正在使用 QuickAction3D库,我想在单击 QuickAction 时使背景变得不透明,就像普通的 AlertDialog 一样,有办法做到这一点吗?
非常感谢
编辑
我的意思是 Activity 变为不透明颜色,而快速操作会保留其当前颜色。例如,如果显示 AlertDialog,则背景 Activity 将变为不透明,而 AlertDialog 将变为透明颜色。
最佳答案
Quich action 3d 在该库中查看他们使用了可绘制选择器的背景 action_item_btn.xml ,您可以根据需要自定义代码。它们已设置为
<item
android:state_pressed="true"
android:drawable="@drawable/action_item_selected"/>
对于背景,如果你想为列表中的项目设置选择器,你可以为那里的 imageView 设置选择器,
创建背景可绘制资源,例如item_background.xml
,在您的 /drawable
文件夹中,包含如下内容:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/color1" android:state_pressed="true"/>
<item android:drawable="@color/color2" android:state_selected="true"/>
<item android:drawable="@color/color3" android:state_activated="true"/>
<item android:drawable="@color/color4"/>
</selector>
然后在您的 /values/colors.xml
文件中提供颜色值:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="color1">#DDff8800</color>
<color name="color2">...</color>
<!-- more colors... -->
</resources>
最后,使用 android:background="@drawable/item_background"
将该可绘制资源设置为布局中的项目背景。
关于java - 如何制作不透明的 Activity ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21150174/