Android:如何创建椭圆大小的可绘制资源?

时间:2015-04-16 13:52:32

标签: android performance android-layout

我正在尝试创建可绘制的资源椭圆形com矩形形状?我想要完全符合下面的形状 enter image description here

但我得到了以下内容:

enter image description here

我正在使用的是什么:

<shape xmlns:android="http://schemas.android.com/apk/res/android"
     android:shape="rectangle" >

  <gradient
    android:startColor="#36D53D"
    android:centerColor="#36D53D"
    android:endColor="#36D53D"
    android:angle="90"/>
  <padding android:left="3dp"
    android:top="5dp"
    android:right="5dp"
    android:bottom="5dp" />

  <corners android:radius="160dp"></corners>
</shape>

如何创建我想要的形状?提前谢谢

3 个答案:

答案 0 :(得分:2)

试试这个:

<?xml version="1.0" encoding="utf-8"?>

  <shape xmlns:android="http://schemas.android.com/apk/res/android">
      <solid android:color="#189B5F" />
      <corners
          android:topLeftRadius="15dp"
          android:topRightRadius="15dp"
          android:bottomLeftRadius="15dp"
          android:bottomRightRadius="15dp"
          />
  </shape>

答案 1 :(得分:1)

使用shape drawable和android:shape给矩形

<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="rectangle">
</shape>

增加角落dp值可以继续检查。我认为给所有角落大约20-25dp会给你那种形状。而对于校正,它不是椭圆形,而是圆角矩形。

答案 2 :(得分:1)

试试这个椭圆形。

<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval" >

    <!-- fill/color -->
    <solid
        android:color="#ff0000"/>

    <!-- Control the width and height of the shape -->
    <size
        android:width="120dp"
        android:height="70dp"/>
</shape>

圆角矩形

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

    <!-- fill/color -->
    <solid
        android:color="#ff0000"/>

    <!-- Control the width and height of the shape -->
    <size
        android:width="200dp"
        android:height="70dp"/>

    <!-- Control the radius of each corners -->
    <corners
        android:topLeftRadius="30dp"
        android:topRightRadius="15dp"
        android:bottomLeftRadius="15dp"
        android:bottomRightRadius="15dp"/>
</shape>