android– 更改按钮的启用颜色,而不更改禁用的颜色

android– 更改按钮的启用颜色,而不更改禁用的颜色,第1张

概述所以我研究了很多,有很多问题和答案谈论按钮和颜色.但在你投票之前看到这个问题更具体,更实际,我没有找到答案.我正在使用元素Button作为我的xml布局.来自android.widget的Button类,它扩展了TextView.此视图可以通过java代码标记为启用或禁用..setEnabled(TRUE|FALSE).按钮x

所以我研究了很多,有很多问题和答案谈论按钮和颜色.
但在你投票之前看到这个问题更具体,更实际,我没有找到答案.

我正在使用元素@R_301_5554@作为我的xml布局.来自android.Widget的@R_301_5554@类,它扩展了TextVIEw.

此视图可以通过java代码标记为启用或禁用. .setEnabled(TRUE | FALSE).

按钮xml代码

<@R_301_5554@    androID:ID="@+ID/maps_List_save_@R_301_5554@"    androID:layout_wIDth="0dp"    androID:layout_height="wrap_content"    androID:text="@string/str_save"    app:layout_constraintBottom_toBottomOf="parent"    app:layout_constraintEnd_toEndOf="parent"    app:layout_constraintStart_toStartOf="parent" />

我想要的是什么:

当我的按钮启用时,我想给他一个紫色.

@L_404_3@当我的按钮被禁用时,获得灰色.

我不想做的事:

创建一个新元素并包含布局,我正在避免这个,因为我想保留选定的动画,提升,填充,提升等.再创建一切并不聪明.

我已经尝试过:

更改背景=它松开内部填充,什么使按钮更大,我想保持材料设计“规则”

更改主题=我尝试通过编辑器和代码更改主题,但发生了两件事:或者我更改了不是按钮的更多内容,或者我更改了相同颜色的启用和禁用.

即使在寻找文档,我也没有找到如何正确使用这个元素.

解决方法:

你需要的是改变androID:colorAccent值,特别是@R_301_5554@.这可以通过将一个主题应用于@R_301_5554@来实现.

在styles.xml中引入了以下更改:

<style name="Purpletheme" parent="Apptheme">    <item name="androID:colorAccent">#8654e2</item></style>

然后在xml文件中声明以下两个按钮,其中第一个按钮具有启用状态,第二个按钮具有禁用状态.

<@R_301_5554@        androID:layout_wIDth="wrap_content"    androID:layout_height="wrap_content"    androID:text="@R_301_5554@ 1"    androID:theme="@style/Purpletheme" /><@R_301_5554@        androID:layout_wIDth="wrap_content"    androID:layout_height="wrap_content"    androID:enabled="false"    androID:text="@R_301_5554@ 2"    androID:theme="@style/Purpletheme" />

注意,按钮应用:

> style =“@ style / Widget.AppCompat.@[email protected]
> androID:theme =“@ style / PurplethemeOverlay”

然后你会得到以下输出:

总结

以上是内存溢出为你收集整理的android – 更改按钮的启用颜色,而不更改禁用的颜色全部内容,希望文章能够帮你解决android – 更改按钮的启用颜色,而不更改禁用的颜色所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1115837.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存