我正在尝试为我的Android应用程序创建一个新按钮。
我在drawable文件夹中创建了一个新的XML文件,其中包含以下代码:
`<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<corners
android:radius="12dp"
/>
<solid
android:color="#00000000"
/>
<padding
android:left="0dp"
android:top="0dp"
android:right="0dp"
android:bottom="0dp"
/>
<size
android:width="270dp"
android:height="60dp"
/>
<stroke
android:width="3dp"
android:color="#FFFFFF"
/>
</shape>
然后我尝试使用以下代码调用它:
<Button
android:id="@+id/newBtton"
android:text="Get Started"
android:textColor="#FFFFFF"
android:textSize="30sp"
android:layout_width="270dp"
android:layout_height="60dp"
android:background="@drawable/buttonshape"
/>
然而,这不起作用。 即使在我的XML文件的预览中,它只是给我一个空白的图像
当我尝试验证XML文件时,出现以下错误: 错误:(2,94)cvc-elt.1.a:找不到元素'shape'的声明。 错误:(1,56)s4s-elt-schema-ns:元素“x”的名称空间必须来自模式名称空间“http://www.w3.org/2001/XMLSchema”。 错误:(1,56)s4s-elt-invalid:元素'x'不是架构文档中的有效元素。 错误:(1,56)schema_reference.4:无法读取架构文档'null',因为1)找不到文档; 2)文件无法阅读; 3)文档的根元素不是。
我只是想知道如何解决这个错误或我做错了什么?
我也在android studio工作
答案 0 :(得分:2)
使用此示例
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<corners
android:bottomRightRadius="10dp"
android:radius="40dp" />
<gradient
android:angle="45"
android:centerX="float"
android:centerY="float"
android:endColor="#01f1fa"
android:gradientRadius="integer"
android:startColor="#0189ff"
android:type="linear" />
<!--If your shape requires only one solid color-->
<!--<solid
android:color="#FFFFFF" />-->
<size
android:width="82dp"
android:height="82dp" />
<!--Use android:dashWidth="2dp" and android:dashGap="2dp"
to add dashes to your stroke-->
<stroke
android:width="2dp"
android:color="#FFFFFF" />
<!--If you want to add padding-->
<!-- <padding
android:left="10dp"
android:top="20dp"
android:right="40dp"
android:bottom="8dp" />-->
答案 1 :(得分:1)
尝试我的按钮样式,让我知道是否显示:
<?xml version="1.0" encoding="UTF-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android">
<stroke
android:width="1dp"
android:color="#505050"/>
<corners
android:radius="7dp" />
<padding
android:left="1dp"
android:right="1dp"
android:top="1dp"
android:bottom="1dp"/>
<solid android:color="#505050"/>
</shape>
答案 2 :(得分:1)
**Note : Try this code work for you. in solid tag you can change what color
you want.**
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<solid android:color="@color/transparent_gray" />
<stroke
android:width="1dp"
android:color="#D2D2D2" />
<corners android:radius="15dp" />
<padding
android:bottom="5dp"
android:left="5dp"
android:right="5dp"
android:top="5dp" />
</shape>