图片视图(ImageView)的使用无处不在,在网站中插入图片可以为程序的界面增色不少,在之前的示例中也曾多次使用过ImageView控件,在这里详细讲解其主要属性、方法及其用法。一般建议在程序中加入图片资源,而不是放在SD卡中以流的方式去读取图片资源,这样做的好处在于嵌入的资源比较安全,不容易被篡改。从程序中读取图片文件,一般将图片文件保存在项目res\drawable开头的3个文件夹下(如图7-1),他们分别代表了高、中、低分辨率的图片。Android在读取图片时将会自动优化,选用适合特定手机分辨率的一个图片显示,比如高分辨率可以存放128*128的图片,低分辨率可以存放32*32的图片。也可以不区分不同分辨率的图片,统一放在res\drawable文件夹下。
ImageView控件的一个重要属性就是设置图片源(android:src),如果把图片放在res\drawable开头的文件夹下,在java程序中可以直接引用图片的名字,从而加载该图片。例如:android:src="@drawable/picture",就是引用picture.jpg这张图片。
ImageView图片视图的另一个重要属性是scaleType(android:scaleType),它是控制图片如何放大或者移动来匹配ImageView的尺寸大小,在之前的示例中也曾涉及,在这里详细讲解ImageView.ScaleType(在java Activity中的定义方法)和android:scaleType(在xml属性中的定义方法)值的具体含义区别,见表7-1。
表7-1 ImageView.ScaleType和android:scaleType值类型区别
下面通过一个示例讲述图片视图ImageView的用法,代码运行结果如图7-2所示。
图7-1 程序中3个图片文件夹
图7-2 ImageView图片视图示例运行结果(www.xing528.com)
首先,介绍如何通过xml布局实现这一效果,如代码清单7-1所示。
代码清单7-1 ImageView显示图片示例(第7章\Demo_Demo_07_01)main.xml
其次,介绍Activity java代码如何配合xml布局实现显示图片这一功能,如代码清单7-2所示。
代码清单7-2 ImageView显示图片示例(第7章\Demo_07_01)MainActivity.java
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。