今天在app中自定义了一个.9.png,之前搜了百度感觉步骤很麻烦,但是真的要做了发现其实很简单。
首先,下载一个png的对话框,或者自己ps做一个也行,这里我就直接下一个稍微ps做了点处理。
将这个png图片放入项目的drawable下
然后,右击选择Create 9-Patch file
点击.9.png的图片后,直接就可以在图上进行自定义描边,刚开始玩的时候我感觉操作有点困难,但是玩了几把感觉上手了,制作起来很容易。
注意:
1、创建的.9.png文件必须放在drawable目录下;
2、只能画四遍四条线,每一根线不能有中断,不然会报编译错误;
3、制作之后记得把原图删了,或者将原图放入mipmap中,不然会有冲突。
制作完之后,开始使用,我就直接上代码了:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
android:orientation="vertical"
tools:context="com.nicole.mytestapplication.MainActivity">
<TextView
android:id="@+id/text1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14sp"
android:background="@drawable/duihuakuang"/>
<TextView
android:id="@+id/text2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14sp"
android:background="@drawable/duihuakuang"/>
</LinearLayout>
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
((TextView)findViewById(R.id.text1)).setText("噼里啪啦\n噼里啪啦\n噼里啪啦\n噼里啪啦\n噼里啪啦\n噼里啪啦");
((TextView)findViewById(R.id.text2)).setText("哈哈哈哈哈哈哈哈哈哈哈");
}
}
好了制作完成,看一下效果。。。由于我的图很大,所以有点丑,勿喷。。。嘿嘿。。。
出了上面的方法之外,网上也有在线的一个制作工具:
http://romannurik.github.io/AndroidAssetStudio/nine-patches.html
进入网页后,点击 SELECT IMAGE 按钮选择本地的png图片,进行制作,制作完毕后点击DOWNLOAD .ZIP 下载就获得了.9.png 图了。
补充:
上、左两根黑线指定的范围是这张图片可任意伸缩的地方;
下、右两根黑线指定的范围是文字可显示的地方。