Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/199.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Android中创建这种类型的按钮_Android_Xml_Button - Fatal编程技术网

如何在Android中创建这种类型的按钮

如何在Android中创建这种类型的按钮,android,xml,button,Android,Xml,Button,如何在android中创建此类按钮。我试过了。我可以知道实现我的目标的正确方法吗?也许这个问题太基本了,但我没有找到任何合适的解决方案。请帮我解决 我想创建这个 <Button android:id="@+id/Btn1" android:layout_width="20dp" android:layout_height="20dp"

如何在android中创建此类按钮。我试过了。我可以知道实现我的目标的正确方法吗?也许这个问题太基本了,但我没有找到任何合适的解决方案。请帮我解决

我想创建这个

               <Button
                android:id="@+id/Btn1"
                android:layout_width="20dp"
                android:layout_height="20dp"
                android:background="@drawable/green_circle"
                android:textSize="20sp"
                android:textColor="@android:color/white"
                android:clickable="true"
                />
以下是green_circle.xml:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="oval">
     <stroke android:width="1sp" android:color="#54d66a" />
</shape>
当我使用这个按钮时,按钮看起来

我怎样才能得到我的欲望按钮。任何需要的帮助

请使用:

文档还说明了如何根据按钮的状态生成不同的图像。

使用:


文档还说明了如何根据按钮的状态生成不同的图像。

将绿色圆圈的图像放入可绘制文件夹。然后在xml中为按钮设置背景图像

       <Button
            android:id="@+id/Btn1"
            android:layout_width="20dp"
            android:layout_height="20dp"
            android:background="@drawable/yourimage"
            />

这将起作用:

将绿色圆圈的图像放在可绘制文件夹中。然后在xml中为按钮设置背景图像

       <Button
            android:id="@+id/Btn1"
            android:layout_width="20dp"
            android:layout_height="20dp"
            android:background="@drawable/yourimage"
            />

这将起作用:

您定义了1sp,您应该使用dp btw.circle,您得到了它。 我认为实现所需的最简单的方法是使用图层列表xml元素——只需将当前图形作为第一层,将第二层作为居中的点,即带有一些边距的实心椭圆形 这里有文档: 简单用法这不是你的情况,但我认为它向你展示了你应该做什么:

<layer-list >
    <item>
        <shape android:shape="rectangle">
            <corners android:radius="2dp"/>
            <solid android:color="@color/grey"/>
        </shape>
    </item>
    <item android:bottom="2dp">
        <shape android:shape="rectangle">
            <corners android:radius="2dp"/>
            <solid android:color="@color/green_light"/>
        </shape>
    </item>
</layer-list>

关键是android:bottom=2dp,这会导致前景层比背景层小。

您定义了1sp,您应该使用dp btw.circle,您得到了它。 我认为实现所需的最简单的方法是使用图层列表xml元素——只需将当前图形作为第一层,将第二层作为居中的点,即带有一些边距的实心椭圆形 这里有文档: 简单用法这不是你的情况,但我认为它向你展示了你应该做什么:

<layer-list >
    <item>
        <shape android:shape="rectangle">
            <corners android:radius="2dp"/>
            <solid android:color="@color/grey"/>
        </shape>
    </item>
    <item android:bottom="2dp">
        <shape android:shape="rectangle">
            <corners android:radius="2dp"/>
            <solid android:color="@color/green_light"/>
        </shape>
    </item>
</layer-list>

关键是android:bottom=2dp,这会导致前景层比背景层小。

1.使用两种不同的收音机图像,根据您的需要打开和关闭,并使xml可绘制:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:state_checked="false" android:drawable="@drawable/check_off" />
     <item android:state_checked="true" android:drawable="@drawable/checkbox_on" />
     <item android:drawable="@drawable/checkbox_off" />
</selector>

2.并在单选按钮上将此可绘制设置为背景。

1.使用两种不同的收音机图像打开和关闭您想要的内容,并在可绘制中创建xml:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:state_checked="false" android:drawable="@drawable/check_off" />
     <item android:state_checked="true" android:drawable="@drawable/checkbox_on" />
     <item android:drawable="@drawable/checkbox_off" />
</selector>

2.并在单选按钮上将此可绘制设置为背景。

实现所需效果的一种方法是使用图层列表可绘制。要获得与您发布的图像相似的可绘制图像,请尝试以下操作

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape android:shape="oval">
            <stroke android:width="1sp" android:color="#54d66a" /> 
        </shape>
    </item>
    <item android:top="5dp" android:left="5dp" android:right="5dp" android:bottom="5dp">
        <shape android:shape="oval">
            <solid android:color="#54d66a" />
        </shape>
    </item>
</layer-list>

实现所需效果的一种方法是使用可绘制的图层列表。要获得与您发布的图像相似的可绘制图像,请尝试以下操作

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape android:shape="oval">
            <stroke android:width="1sp" android:color="#54d66a" /> 
        </shape>
    </item>
    <item android:top="5dp" android:left="5dp" android:right="5dp" android:bottom="5dp">
        <shape android:shape="oval">
            <solid android:color="#54d66a" />
        </shape>
    </item>
</layer-list>

如果你检查我的代码,你会发现我避开了图像。尝试使用样式创建自定义按钮。按钮背景很简单,但为什么要寻找如此复杂的方式?如果你检查我的代码,你会发现我避免使用图像。尝试使用样式创建自定义按钮。按钮背景很简单,那你为什么要寻找如此复杂的方式呢?是的。我已经这样做了。你的方法太正确了。顺便说一句,我接受你的回答。祝你快乐。我已经做到了。你的方法太正确了。顺便说一句,我接受了你的答案。祝你好运。西尔:你的方法是对的。这就是为什么我投票支持你的答案。将形状矩形添加到椭圆形,并更新顶部、右侧、按钮、左侧等的半径字段。顺便说一句,非常感谢您的关注。祝您编码愉快是的,我知道-只是我在当前打开的项目中有这个示例;先生:你的方法是正确的。这就是为什么我赞成你的答案。将形状矩形添加到椭圆形,并更新顶部、右侧、按钮、左侧等的半径字段。顺便说一句,非常感谢您的关注。祝您编码愉快是的,我知道-只是我在当前打开的项目中有这个示例;