2014年9月12日金曜日

Androidで角毎に丸みの異なる角丸ボタンを作る

AndroidのShapeDrawableで、
<corners android:radius="5dp" />
みたいな指定をすると四隅すべて角丸になりますが、これはbottomLeftRadiusのように各角毎に指定できます。
サンプルは以下の通り。


<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- unpressed -->
<itemandroid:state_pressed="false">
 <shape android:shape="rectangle">
 <solid android:color="#3366ff" />
 <corners 
 android:bottomLeftRadius="20dp" 
 android:bottomRightRadius="20dp"
 android:topLeftRadius="20dp" 
 android:topRightRadius="0dp" />
 </shape>
</item>
<itemandroid:state_pressed="true">
 <shape android:shape="rectangle">
 <solid android:color="#6699ff" />
 <corners 
 android:bottomLeftRadius="10dp" 
 android:bottomRightRadius="10dp"
 android:topLeftRadius="10dp" 
 android:topRightRadius="0dp" />
 </shape>
</item>
</selector>


0 件のコメント:

コメントを投稿