无法创建合适的形状

时间:2015-09-24 05:42:55

标签: java android android-drawable

我正在尝试创建像enter image description here这样的形状 但是现在它的样子是enter image description here

这是我的代码

<shape xmlns:android="http://schemas.android.com/apk/res/android">
         <solid android:color="@color/somecolor" />

<corners
    android:radius="10dip"
    android:bottomLeftRadius="10dp"
    android:bottomRightRadius="10dp"
    android:topLeftRadius="10dp"
    android:topRightRadius="10dp" />
         <padding
            android:top="10dp"
            android:bottom="10dp" />
    </shape>

任何帮助?

3 个答案:

答案 0 :(得分:0)

custom_layout.xml

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
    <stroke android:width="2dp" android:color="#ff207d94" />
    <padding android:left="2dp"
        android:top="2dp"
        android:right="2dp"
        android:bottom="2dp" />
    <corners android:radius="5dp" />
    <solid android:color="@color/somecolor" />
</shape>

您的观点

<View
    android:id="@+id/myView"
    android:layout_width="60dp" // width and height will decide the shape
    android:layout_height="30dp"
    android:background="@drawable/custom_layout"/>

答案 1 :(得分:0)

那里究竟是什么问题(尺寸/高度......)。 你试过给你的形状添加一些欧姆标签吗? 我用的是:

<shape>
  <gradient
      android:startColor="#525251"
      android:endColor="#838181"
      android:angle="270" />
  <stroke
      android:width="1dp"
      android:color="#525251" />
  <corners
      android:radius="6dp" />
  <padding
      android:left="5dp"
      android:top="5dp"
      android:right="5dp"
      android:bottom="5dp" />
</shape>

(布局XML中定义的宽度/高度)

答案 2 :(得分:0)

android:top更改为android:left,将android:bottom更改为android:right

此外,您可以对这些属性使用负值,因此您可以精细调整您想要实现的内容。