android - 渐变按钮显示默认紫色
问题描述
我正在尝试在按钮上创建渐变背景,但是当我按照之前提出的问题的答案执行此操作时,我得到的只是默认的紫色。
布局.xml
<Button
android:id="@+id/instagram_button"
android:layout_width="match_parent"
android:layout_height="100dp"
android:layout_gravity="center"
android:background="@drawable/gradient_shape"
android:text="Open Instagram Profile"
></Button>
渐变形状.xml
android:shape="rectangle">
<gradient
android:angle="270"
android:centerColor="#F82634"
android:endColor="#FA3B6F"
android:startColor="#FA7D6F" />
<padding
android:bottom="7dp"
android:left="7dp"
android:right="7dp"
android:top="7dp" />
<corners android:radius="60dp" />
解决方案
|最终更新|:将按钮更改为 ImageButton 并将 srcCompat 设置为我想要的可绘制对象,此方法有效!为了让我的按钮相互重叠,我使用了一个框架布局来封装它们,如下所示。
<FrameLayout
android:layout_width="380dp"
android:layout_height="50dp"
android:layout_gravity="center">
<ImageButton
android:id="@+id/image_button"
android:text="Open Instagram Profile"
android:layout_width="380dp"
android:layout_height="50dp"
android:layout_gravity="center"
android:backgroundTint="@null"
android:background="@null"
app:srcCompat="@drawable/custom_button" />
<Button
android:id="@+id/instagram_button"
android:layout_width="380dp"
android:layout_height="50dp"
android:layout_gravity="center"
android:background="@null"
android:backgroundTint="@null"
android:text="Open Instagram Profile"
android:alpha="0"
/>
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Open Instagram Profile"
android:gravity="center"
android:textSize="20dp"
android:textColor="@color/white"
></TextView>
</FrameLayout>
推荐阅读
- html - 如何在不更新表单中所有字段的情况下进行更新
- python - python中fmincon的替代方法,用于约束非线性优化问题
- ag-grid - 为 ag-grid 列分组/枢轴添加边框
- javascript - 通过 ajax 传递一个图像,通过表单传递另一个图像
- docker - 带有mac-vlan网络的docker容器在重新启动后显示错误的IP?
- svelte - 在 SvelteJS v3 中的循环内访问 Store 的值
- excel - 在单元格内容中的任何字母或特殊符号之前提取数字
- python-3.x - 排序字典时重写字典键
- windows - 终止使用 Qt 启动的 Docker 进程
- react-native - React Native Animated lagging - 通过函数调用防止重新渲染