但是如果只用一个图片做背景,那么因为长宽的问题,背景图片经常就会被拉伸的很难看,所以,这里就要提到一个android自带的工具,叫做draw9patch。我们找到android的sdk文件夹,里面有个叫tool的文件夹,里面就放了这个工具,我们点开它(会慢,耐心等下),发现界面很单纯:
它虽然长得很单纯,但是效果可是华丽丽的哦~
我们找到一个希望放文字的图片素材进来,然后她会自动给图片的四周放大一个像素,来让我们定义拉伸时候的重复像素。
这里我用了苹果短信的气泡:
右边就是拉伸的效果,很理想吧~大家看到,图片的四边被我点了四个点,就是这4个点起到的作用,原理就是:
在拉伸的时候,它会复制这四个点范围内的像素,而不是一味的拉伸。
换句话说,拉伸的时候,图像会复制这4个点对应的行列,而不会影响其它的像素。
我稍微把这个图画个示意:
被红线框起来的部分,就是横向或者纵向拉伸的时候被不断复制的地方,而其它地方拉伸的时候并不影响。
这样,我们把这个图用在textview的定制文件里,textview.xml的内容如下:
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="false" android:drawable="@drawable/bubble" />
<item android:state_pressed="true" android:drawable="@drawable/bu_pressed" />
<item android:state_focused="true" android:drawable="@drawable/bu_pressed"/>