Android: 可绘制完美圆角
Android: drawable with perfect round corner
我正在尝试制作如下所示的可绘制对象:
我用下面的代码做了这个:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="60dp"
android:background="@color/white"
android:padding="10dp"
android:orientation="vertical">
<View
android:layout_width="40dp"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:background="@drawable/bg_round_button_green"/>
<View
android:layout_width="40dp"
android:layout_height="match_parent"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:background="@drawable/bg_round_button_green"/>
<TextView
android:layout_width="match_parent"
android:layout_height="36dp"
android:text="Text"
android:textColor="@color/white"
android:textSize="22sp"
android:gravity="center"
android:layout_centerVertical="true"
android:background="@color/siam_green3"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"/>
</RelativeLayout>
bg_round_button_green.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="ring">
<solid android:color="#FF0DAB61"/>
</shape>
我也试过这个:
bg_round_button_green.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#FF0DAB61"/>
<corners android:radius="100dp"/>
</shape>
但是显示,
是否可以使用单个可绘制形状(无需创建三个视图)来实现此目的?
如果您要绘制一个角设置为较大值的可绘制对象:
<corners android:radius="100dp" />
没有3次观看,您将得到想要的东西
试试这个。非常适合我。
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<solid android:color="#A5000000"/>
<stroke android:width="0dp"
android:color="#00FFFFFF"/>
<padding android:left="0dp"
android:top="0dp"
android:right="0dp"
android:bottom="0dp"/>
<corners android:bottomRightRadius="10dp"
android:bottomLeftRadius="10dp"
android:topLeftRadius="10dp"
android:topRightRadius="10dp"/>
</shape>
我正在尝试制作如下所示的可绘制对象
我用下面的代码做了这个:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="60dp"
android:background="@color/white"
android:padding="10dp"
android:orientation="vertical">
<View
android:layout_width="40dp"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:background="@drawable/bg_round_button_green"/>
<View
android:layout_width="40dp"
android:layout_height="match_parent"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:background="@drawable/bg_round_button_green"/>
<TextView
android:layout_width="match_parent"
android:layout_height="36dp"
android:text="Text"
android:textColor="@color/white"
android:textSize="22sp"
android:gravity="center"
android:layout_centerVertical="true"
android:background="@color/siam_green3"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"/>
</RelativeLayout>
bg_round_button_green.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="ring">
<solid android:color="#FF0DAB61"/>
</shape>
我也试过这个:
bg_round_button_green.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#FF0DAB61"/>
<corners android:radius="100dp"/>
</shape>
但是显示,
是否可以使用单个可绘制形状(无需创建三个视图)来实现此目的?
如果您要绘制一个角设置为较大值的可绘制对象:
<corners android:radius="100dp" />
没有3次观看,您将得到想要的东西
试试这个。非常适合我。
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<solid android:color="#A5000000"/>
<stroke android:width="0dp"
android:color="#00FFFFFF"/>
<padding android:left="0dp"
android:top="0dp"
android:right="0dp"
android:bottom="0dp"/>
<corners android:bottomRightRadius="10dp"
android:bottomLeftRadius="10dp"
android:topLeftRadius="10dp"
android:topRightRadius="10dp"/>
</shape>