使用shape时注意事项 如果不想shape当成背景变形那么
1 尽量
不要在控件上面设置padding;
2 在
shape里面设置size 和 padding(主要是设置size属性如果size够大能容下内容和padding的范围 那么添加了padding就不会变形,否则就会变形)设置padding是因为内容和背景的原点都在最上角 设置padding 就可以将内容的左上角位置改变
3 当size无法满足内容加padding时尽量让padding成屏幕比例进行设置减小变形的程度
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval"
>
<solid android:color="#b38323"/>
<size
android:width="15dp"
android:height="15dp"></size>
<padding
android:bottom="1dp" //如果设置成一样大小且超过了size,会被拉长
android:left="2dp"
android:right="2dp"
android:top="1dp"></padding>
</shape>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<TextView
android:id="@+id/tv_title"
android:layout_marginTop="@dimen/Padding_12"
android:layout_marginBottom="@dimen/Padding_15"
android:layout_marginLeft="@dimen/Padding_6"
android:layout_marginRight="@dimen/Padding_6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/green_gray_circle_select"
android:drawableTop="@drawable/icon_flooter01"
android:gravity="center"
android:paddingTop="@dimen/Padding_10" //这里给了10个dp不变形是因为shape里面的size为80dp 可以容下内容和padding
android:text="@string/txt_tuifang"
android:textColor="@color/font_white"
android:textSize="@dimen/textsize_14" />
</LinearLayout>