2011-10-04 66 views
1

我只是无法弄清楚。我在res这种形状/绘制/ start_light.xmlAndroid形状绘制xml没有绘制在设备上也没有模拟器

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="ring" 
    android:innerRadius="20dp" 
    android:thickness="0dp" 
    android:useLevel="false"> 
    <solid android:color="#FF0000" /> 
</shape> 

在RES /价值/ styles.xml我:

<?xml version="1.0" encoding="UTF-8"?> 
<resources> 
    <style name="StartLight"> 
     <item name="android:layout_height">50dp</item> 
     <item name="android:layout_width">50dp</item> 
     <item name="android:background">@drawable/start_light</item> 
    </style> 
</resources> 

而且在主要布局我有:

<LinearLayout 
    android:id="@+id/linearLayout1" 
    android:layout_gravity="center_horizontal" 
    android:layout_width="wrap_content" 
    android:gravity="center_vertical" android:layout_height="150dp"> 
    <ImageView android:src="@drawable/start_light" android:id="@+id/light5" android:layout_width="50dp" android:layout_height="50dp"></ImageView> 
    <View style="@style/StartLight" android:id="@+id/light4"></View> 
    <View style="@style/StartLight" android:id="@+id/light3"></View> 
    <View style="@style/StartLight" android:id="@+id/light2"></View> 
    <View style="@style/StartLight" android:id="@+id/light1"></View> 
</LinearLayout> 

以以太方式,使用View或ImageView我没有看到我的布局在仿真器或设备上的任何红色圆圈。在xml图形设计师他们在那里。我在这里错过了什么?

回答

7

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="ring" 
    android:innerRadius="0dp" 
    android:thickness="20dp" 
    android:useLevel="false"> 
    <solid android:color="#FF0000"/> 
</shape> 

设置厚度更换你的形状绘制为0取得在模拟器上它不可见。 在这里我设置innerRadius为0.

+0

非常感谢,它工作:) – kaupov