gpt4 book ai didi

android - 使用自定义选择器膨胀类 android.widget.Button 时出错

转载 作者:行者123 更新时间:2023-11-29 14:26:55 29 4
gpt4 key购买 nike

我正在尝试在 android View 中设置按钮样式,但自从添加了自定义选择器后,我收到以下错误,这是什么原因造成的?:

Android.Views.InflateException: Binary XML file line #1: Error inflating class android.widget.Button

造成悲伤的观点

<Button
android:text="Next"
android:id="@+id/nextButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/primary_button_style"
android:textColor="@color/button_primary"
android:background="@color/button_primary" />

res/color/button_primary.xml

<?xml version="1.0" encoding="utf-8" ?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:color="@color/accent"
android:state_enabled="true"
/>
<item
android:color="@color/grey"
android:state_enabled="false"
/>
</selector>

res/values/Styles.xml

  <style name="primary_button_style" parent="android:Widget.Button">
<item name="android:paddingLeft">50px</item>
<item name="android:paddingRight">50px</item>
<item name="android:height">50px</item>
<item name="android:minHeight">50px</item>
<item name="android:maxHeight">50px</item>
<item name="android:textAllCaps">true</item>
<item name="android:textSize">30px</item>
<item name="android:textStyle">bold</item>
</style>

我在 Visual Studio 中使用 Xamarin

最佳答案

您发布的选择器适用于文本颜色,不适用于背景。您应该在文件夹 drawable/ 中添加一个并使用 android:drawable 而不是 android:color

<?xml version="1.0" encoding="utf-8" ?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:drawable="@color/accent"
android:state_enabled="true"
/>
<item
android:drawable="@color/grey"
android:state_enabled="false"
/>
</selector>

顺便说一句。如果您对背景和文本使用相同的颜色,您将看不到后者

关于android - 使用自定义选择器膨胀类 android.widget.Button 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34653264/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com