android - 按钮的自定义背景设置不正确

标签 android css android-layout android-selector

您好,我正在用 android 设计此页面(仅限样式) enter image description here . 前 3 个按钮的设计引用了 this .

但是我设计的 DONATE NOW 按钮变成了这样透明的 enter image description here

还有点击事件(statepreseed="true")也是透明的就好 enter image description here .

这是我的“立即捐赠”按钮的背景代码

 <?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true">
        <shape android:shape="rectangle" >
            <corners
                android:radius="0dp" />
           <solid android:color="#33e7d283"></solid>
            <padding
                android:left="0dp"
                android:top="0dp"
                android:right="0dp"
                android:bottom="0dp"
                />
            <stroke
                android:width="4dp"
                android:color="#00e9ca30"
                />
        </shape>
    </item>
    <item>
        <shape android:shape="rectangle" >
            <corners
                android:radius="0dp"
                />

            <gradient
                android:angle="225"
                android:centerX="23%"
                android:centerColor="#33f4c40e"
                android:startColor="#ffdab605"
                android:endColor="#ffdab605"
                android:type="linear"
                />
            <padding
                android:left="0dp"
                android:top="0dp"
                android:right="0dp"
                android:bottom="0dp"
                />
        </shape>
    </item>

</selector>

如果有人有解决方案,请帮忙

最佳答案

您使用的是 ARGB 而不是 RGB。因此,您正在创建具有透明背景的图像。

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <corners android:radius="0dp" />

    <gradient
        android:angle="225"
        android:centerColor="#e7d283"
        android:centerX="23%"
        android:endColor="#ffdab605"
        android:startColor="#ffdab605"
        android:type="linear" />
    <padding
        android:bottom="0dp"
        android:left="0dp"
        android:right="0dp"
        android:top="0dp" />
</shape>

使用 e7d283ffe7d283 颜色代码代替 33e7d283 可能会解决黄色图像背景的问题。

使用 33 作为 alpha 意味着你只给你的中心颜色 20% 的不透明度。这就是您可以在图像中间看到背景颜色的原因。

关于android - 按钮的自定义背景设置不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47448529/

相关文章:

android - 如何检测 View 有多少滚动 ScrollView

java - 如何向前移动/迭代到数组中的下一个值(java/android)

html - 选择具有特定样式的元素?

android - 使用最新的 WindowInset API 出现软键盘时如何调整对话框布局

android - RelativeLayout 未使用协调器布局 android 正确绘制

java - Android 4 标签布局的最佳方式?

java - getTypedArray 调用后 TypedArray 为空

java - 是否有支持 NPER 函数的 NPER 或金融函数库?

html - 不同 block 中的标题文本没有响应

html - 如何将我的 css 连接到存储在 WEB-INF 文件夹中的 JSP 文件?网页/JSP