tal*_*aul 1 xml android xamarin
我试图在android视图中设置一个按钮的样式,但是由于添加了一个自定义选择器,我得到以下错误,是什么导致这个?:
Android.Views.InflateException:二进制XML文件行#1:错误膨胀类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" />
Run Code Online (Sandbox Code Playgroud)
RES /颜色/ 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>
Run Code Online (Sandbox Code Playgroud)
RES /值/ 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>
Run Code Online (Sandbox Code Playgroud)
我在Visual Studio中使用Xamarin
您发布的选择器适用于文本颜色,而不适用于背景.您应该在文件夹中添加一个而不是drawable/使用android:drawableandroid: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>
Run Code Online (Sandbox Code Playgroud)
顺便说一句.如果你使用相同的颜色作为背景和文本,你将无法看到后者