在Android中的另一个圈内创建圈子

时间:2017-04-10 11:59:20

标签: android android-shape

我需要为我的相机应用创建图像。我在另一个圆圈内创建一个圆圈 当我在android studio上看到它时它看起来很好但是当它在真实设备上运行时它与它不一样。这是来自真实设备的第一个和来自android studio的第二个的图像。

image from real device Circle inside circle

这是我用来创建它的代码。

 <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Larger circle in white-->
<item>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="oval">
        <padding android:top="5dp" android:bottom="5dp" android:right="5dp" android:left="5dp"/>
        <stroke
            android:width="1dp"
            android:color="#ffffff"/>
    </shape>
</item>
<!-- Smaller white circle in front -->
<item>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="oval">
        <solid
            android:color="#ffffff"/>
    </shape>
</item>
 </layer-list>

它出现不同的问题是什么。

2 个答案:

答案 0 :(得分:2)

一切似乎都很好,只需添加尺寸属性即可。希望之后它会对你有用。

<size android:height="40dp" android:width="40dp"/>

示例:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

<item>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
           android:shape="oval">
        <size android:height="40dp" android:width="40dp"/>
        <padding android:top="5dp" android:bottom="5dp" android:right="5dp" android:left="5dp"/>
        <stroke
            android:width="1dp"
            android:color="#ffffff"/>
    </shape>
</item>

<item>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
       android:shape="oval">
    <size android:height="40dp" android:width="40dp"/>
    <solid
        android:color="#ffffff"/>
</shape>
</item>
</layer-list>

我使用40dp作为宽度和高度的大小。您可以根据自己的要求进行更改。

答案 1 :(得分:0)

我认为这是因为您设备的操作系统不支持“android:top”“android:bottom”等属性。