android - 更改android按钮上的背景颜色
问题描述
我想让我的按钮具有我指定的颜色,但在其他方面看起来和行为仍然像标准按钮。所以我搜索并找到了这个。我遵循了那里给出的建议,但背景颜色保持标准灰色。知道我哪里出错了吗?
在我的styles.xml中我把这个:
<style name="AppTheme.Button" parent="Widget.AppCompat.Button.Borderless.Colored">
<item name="android:colorButtonNormal">@color/colorButtonDark</item>
<item name="android:textColor">@color/colorAccent</item>
</style>
我的颜色是这些:
<resources>
[...]
<color name="colorAccent">#ffffff</color>
<color name="colorButtonDark">#300a03</color>
</resources>
一个示例 Button 如下所示:
<Button
android:text="exampleButton"
android:layout_width="0dp"
android:layout_height="0dp"
android:id="@+id/button7" android:layout_marginTop="8dp"
app:layout_constraintTop_toTopOf="@+id/guideline19" android:layout_marginBottom="8dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="@+id/guideline"
android:layout_marginStart="8dp" app:layout_constraintEnd_toEndOf="parent"
android:layout_marginEnd="8dp" android:theme="@style/AppTheme.Button"/>
解决方案
尝试使用android.support.v7.widget.AppCompatButton
而不是Button
在 xml 中。
<android.support.v7.widget.AppCompatButton
android:text="exampleButton"
android:layout_width="0dp"
android:layout_height="0dp"
android:id="@+id/button7" android:layout_marginTop="8dp"
app:layout_constraintTop_toTopOf="@+id/guideline19"
android:layout_marginBottom="8dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="@+id/guideline"
android:layout_marginStart="8dp" app:layout_constraintEnd_toEndOf="parent"
android:layout_marginEnd="8dp" android:theme="@style/AppTheme.Button"/>
推荐阅读
- javascript - Firebase 存储错误 - 不是函数
- html - 多个 HTML 文件中的连续视频壁纸
- java - 关于使用 android studio gradle 3.1.4 和 3.2 构建的确切问题是什么
- java - 方法 orElseThrow(() -> {}) 未为 Page 类型定义
- firebase - 潜在缺陷 - Firebase 在 AAB 测试中的不合理结果
- makefile - Makefile 在另一台机器上抛出缺少分隔符错误
- reactjs - 我想在反应中创建聊天框类型的组件,可以在右下角打开并且可以最小化
- javascript - 将用户输入加载到数组中然后显示
- angular - 点击 Angular / Typescript 后动态绑定
- database - 如何通过键和字符串搜索查询到 couchdb