我使用此样式更改按钮
的背景颜色:
<style name="AccentButton" parent="Widget.AppCompat.Button.Colored">
<item name="colorButtonNormal">@color/colorAccent</item>
<item name="android:textColor">@color/white</item>
</style>
在布局中:
<Button
android:id="@+id/login_button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/fragment_login_login_button"
app:theme="@style/AccentButton"/>
它起作用了。但是当我在这个按钮
上调用setEnabled(false)
时,它保持相同的颜色。我怎么处理这个案子?
您没有正确使用widget.appcompat.button.colored
样式。您使用的是父样式(widget.appcompat.button.colored
),但将其作为主题应用。这实际上意味着widget.appcompat.button.colored
部分将被完全忽略,您只需更改按钮的默认颜色(它可以工作,但不能处理禁用的情况)。
相反,您应该使用ThemeOverlay
并单独应用Colord
样式:
<style name="AccentButton" parent="ThemeOverlay.AppCompat.Dark">
<!-- customize colorButtonNormal for the disable color -->
<!-- customize colorAccent for the enabled color -->
</style>
<Button
android:id="@+id/login_button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/fragment_login_login_button"
android:theme="@style/AccentButton"
style="@style/Widget.AppCompat.Button.Colored"/>
正如关于使用Widget.AppCompat.Button.Colord
样式的答案所述,禁用的颜色由ColorButtonNormal
控制,启用的颜色由ColorAccent
控制。通过使用ThemeOverlay.AppCompat.dark
,TextColor
会自动更改为dark,这意味着您可能根本不需要自定义的ThemeOverlay
。
我需要知道使用最新的AppCompat(目前为23.2.1)为材质按钮(AppCompatButton)着色的最佳(推荐)方法是什么。我从来没有想到会如此令人沮丧!我尝试了这里的大多数答案,但要么不起作用,要么产生了意想不到的结果。 我需要保持与api的向后兼容性 如果您能同时提供xml和java代码,我将不胜感激。
问题内容: 我了解到,您可以仅通过将HTML按钮附加到其标签来禁用(使其实际上不可点击),但不能将其作为属性,如下所示: 由于此设置不是属性,因此如何通过JavaScript动态添加此设置以禁用以前启用的按钮? 问题答案: 由于此设置不是属性 这是一个属性。 一些属性定义为布尔值,这意味着您可以指定它们的值,而忽略其他所有内容。即,您只包括粗体部分,而不是disabled =“ disabled
问题内容: 请在http://plnkr.co/edit/9dyBVZh67sxmIqUQB50S?p=preview上的 plunkr代码中查看我的示例 我有4个按钮,其中两个按钮由于某种情况而被禁用。 我希望能够在两个被禁用的按钮上显示工具提示,第一个被禁用的按钮显示“ Test itemName2不可用”,第二个被禁用的按钮显示“ Test itemName4不可用”,而另一个则没有工具提示
问题内容: 我有一个我想将背景颜色更改为白色的。使用“金属外观”时,我可以通过以下方式实现所需的效果setBackground: 具有白色背景的金属外观风格的JButton 不幸的是,使用Windows LAF时,“背景色”的概念有所不同。背景颜色是按钮周围绘制的颜色: Windows外观风格的JButton,带有白色背景 我想使用Windows LAF,但允许将此按钮的颜色JButton更改为白
材料规格显示禁用按钮状态,看起来是灰色的。 https://www.material.io/design/components/buttons.html#切换按钮 只是默认情况下没有在材料Android组件中实现?材料组件是否定义了禁用的按钮状态器?
问题内容: 我不断收到以下错误:AttributeError:’NoneType’对象没有属性’configure’ 问题答案: 执行时,分配给该命令的结果是命令的结果, 而不是 对创建的对象的引用。 您需要在打包/网格化之前分配变量。它看起来应该像这样: