自己在网上看了很多shape的基本用法,有一个很明显的弊端,就是绘制完shap后,就不说在哪里使用了。因为有些新手,他们需要知道这些知识点应该怎么用,连怎么用都不知道,那还怎么学下去。我在某Adroid教程网站顺序就很奇怪,活动都没讲怎么建立,就开始讲布局了。(我当时就是因为这个差点放弃安卓,还好后来自己贼心不死,买了《第一行代码》)。所以说,我觉得教程简单易懂很重要。
首先在res/drawble建立xml文件,我建立的是shap_btn.xml(应该是用来弄按钮的)位置如下:
shap_btn.xml里面的代码:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<!--这个是半径,主要是弄圆角的-->
<corners android:radius="20dp"></corners>
<!--这个用来填充背景颜色-->
<solid android:color="#2efc0a"></solid>
<!--这个是用来渐变的颜色的-->
<gradient android:centerColor="#da6060"></gradient>
<stroke android:color="#0a24ec"
android:width="5dp"></stroke>
</shape>
最,最,最重要的地方是写完后放在哪里,是放在控件backgroud里面,我之前看了很多教程都没把这个关键说出来,只说shap,看起来一头雾水。下面是使用方法:
<?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:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.demo.MainActivity">
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/shap_btn"/>
</RelativeLayout>
是的,我把shap_btn.xml放在了Button的backgroud里面了。
然后,我们再看一下shap常用属性:
1.corners
主要是用来控制控件的四个角的,弄圆边框就是用的这个属性,上面shap_btn.xml第一行代码效果图如下:
<!--这个是半径,主要是弄圆角的-->
<corners android:radius="20dp"></corners>
很明显,按钮的四个角变圆角了。
2.solid
这个主要是用来填充背景颜色的。效果图如下:
3.gradient
这个是用来渐变颜色的,所谓渐变颜色,就是从深色到浅色。效果图如下,我做的属性是从中间散开来。
4.strok
这个用来绘制控件的边框的,可以指定边框的颜色和大小。效果图如下:
写得不是很好,但是对于新手来说,这点就够了。