这篇文章主要介绍了Android中XML文件的使用方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获、下面让小编带着大家一起了解一下。
<强> Android XML文件使用的示例代码强>
一、布局文件:在布局目录下,使用比较广泛,
我们可以为应用定义两套或多套布的局,例如:可以新建目录layout_land(代表手机横屏布局),layout_port(代表手机竖屏布局),系统会根据不同情况自动找到最合适的布局文件,但是在同一界面的两套不同布局文件的文件名应该是相同的,只是放在了两个不同的目录下。
二,图片文件:在可拉的目录下,从2.1版本以后分为三个目录,
drawable-hdpi里面存放高分辨率的图片,如WVGA (480×800), FWVGA (480×854)
drawable-mdpi里面存放中等分辨率的图片,如HVGA (320×480)
drawable-ldpi里面存放低分辨率的图片,如QVGA (240×320)
系统会根据机器的分辨率来分别到这几个文件夹里面去找对应的图片。
在开发程序时为了兼容不同平台不同屏幕,建议各自文件夹根据需求均存放不同版本图片。
我们可以将已经做好的图片放到该目录下,或者通过自定义XML文件来实现想要的图片,例如我们可以定义shapge_1。xml放到可拉的目录下,内容如下:
& lt; shape xmlns: android=癶ttp://schemas.android.com/apk/res/android",,, android:形状=皁val"祝辞, & lt; !——android:形状=皁val"表示所要绘制的图形是一个椭圆,默认是矩形,长方形——比; & lt; gradient ,,,android: startColor=? 0055 ff88", ,,,android: centerColor=? 0055 ff00", ,,,android: centerY=?.75“, ,,,android: endColor=? 00320077“, ,,,android:角=?70“,/祝辞, & lt; !——gradient 产生颜色渐变,android: angle 从哪个角度开始变,只有90的整数倍可以,——比; & lt; solid  android:颜色=? ff4100ff"/祝辞, & lt; !——固体表示图形是实心的,填充里面,# ff4100ff为填充颜色——比; & lt; stroke ,,,android:宽度=? dp" ,,,android:颜色=? ee31ff5e", ,,,android: dashWidth=? dp", ,,,android: dashGap=? dp",/祝辞, & lt; !——,描边,采用那样的方式将外形轮廓线画出来,宽表示笔的粗细,dashWidth表示小横线的宽度,dashGap表示小横线之间的距离——比; & lt;填充 ,,,android:左=? dp" ,,,android:顶级=? dp" ,,,android:右=? dp", ,,,android:底部=? dp",/祝辞, & lt; !——和CSS中的填充物应该是一个道理——比; & lt; corners  android:半径=? dp",/祝辞, & lt; !——角落表示是有半径为5像素的圆角——比; & lt;/shape>
当我们想让一个控件根据不同状态显示不同图片,可以直接在程序中控制,也可以在可拉的目录建立XML文件达到相同的效果,例如:我们可以在可拉的目录下新建文件button_back。xml
以上XML文件可以实现一个控件(假设为按钮),获取焦点,按下按钮,正常状态下显示不同图片的效果,只需要在定义控件是引用该文件名即可,例如:
& lt;按钮 ,,,,android: id=癅 + id/Button" ,,,,android: layout_width=皐rap_content" ,,,,android: layout_height=皐rap_content" ,,,,android:背景=癅drawable/button_add_x"比; & lt;/Button> & lt; !——android:背景=癅drawable/button_back"指向button_back.xml文件,在
但是当我们的条件不是系统已有的事件类型,例如根据ImageView根据一个变量var的值的不同显示不同的图片,应该怎么办呢?可以在程序中写如下代码
if (条件1) {, image.setBackground (R.id.xxx1);, } else if (条件2) {, image.setBackground (R.id.xxx2);, },…
或者可以用另一个简便的方法实现相同的功能,在res/可拉的下建立一个xml文件,内容如下