2017-04-10 106 views
0

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

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> 

这是什么问题,为什么它表现出不同。

+0

[如何在使用Android xml形状的圆圈内绘制圆圈?](http://stackoverflow.com/questions/21613308/how-to-draw-a-circle-inside-a-circle-使用-Android-xml-shapes) –

回答

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作为宽度和高度的尺寸。您可以根据您的要求更改它。

+0

如果你记得原来的答案,而不是复制/粘贴会好起来http://stackoverflow.com/questions/21613308/how-to-draw-a-circle-inside-a- circle-using-android-xml-shapes/27569549#27569549 –

+0

@SeanBarbeau它不复制粘贴,它在提供问题的解决方案中进行更改。 :) –

+0

@GaneshKatikar什么是创建形状或加载图像像这种情况下的最佳方式。 –

0

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