3.5.2 External Storage
外部存储空间是指手机出厂的时候不存在,用户在使用时候可以自由添加的外部存储介质比如TS卡,SD卡等闪存储介质。
Android支持外部存储介质。其实更确切的说,它是要依赖于外部存储卡的,因为对于Android系统,如果没有外部存储卡,很多的系统应用无法使用,虽然Android很依赖,但是外部存储卡也有它自身的特点,它最大的优点就是存储空间大,基本上你可无限制的使用,也不怎么担心去清除数据。就目前来看,很多程序都在使用外部存储卡。外部存储的缺点就是不是很稳定,对于Android手机来讲可以说,很不稳定,本身闪存介质就容易出问题,SD卡处于不能正常使用的状态十分多。
3.6 软件UI设计
主界面activity里显示图册、SD卡文件浏览和查看网络图片功能。图册使用ImageView控件,SD卡文件浏览和查看网络图片使用Button控件。对这些控件加入onclick监控。点击功能跳转到对应的activity。
点击图册跳转到图片浏览界面。
public void openView(View view){
if(imagemode == mode2d){
intent = new Intent(this, GalleryViewActivity.class);
}
if(imagemode == mode3d) {
intent = new Intent(this, ViewImage3D.class);
}
String pathImage = "/mnt/sdcard/Pictures/picturea";
intent.putExtra(PATH_IMAGE, pathImage);
startActivity(intent);
}
点击SD卡文件浏览功能跳转到文件浏览界面。
public void OpenFileImage(View view) {
Intent intent = new Intent(this, OpenSDFile.class);
startActivity(intent);
}
点击网络图片查看功能跳转到网络图片查看界面。
public void OnNetDownImage(View view) {
Intent intent = new Intent(this, DownNetImage.class);
startActivity(intent);
}
界面设计风格以黑色为基调,文字使用白色。总体上看过去美观,不会显得排版杂乱无章。图册的显示带有立体效果,看上去显得与众不同。
图 2 主界面
3.7 图册设计
3.7.1 图册实现
图册是根据SD里的文件夹来划分的,一个文件夹对应一个图册,每个图册代不同图片类型。
本软件在SD的pictures文件夹下建立3个文件夹,分别为picturea、pictureb和picturec。picturea文件夹存放相机图片;pictureb文件夹存放风景图片;picturec存放手机壁纸图片。
图册的显示以3张图册里的图片缩略图堆叠的方式;在图册上方显示图册中图片数量。
图册中图片数量获取代码如下:
File root = new File("/mnt/sdcard/Pictures/picturea");
File[] filelist = root.listFiles();
xiangJi.setText("相机|"+filelist.length+"张");
3.7.2 2D图片浏览设计
2D图片浏览,使用到gallery的派生类MyGallery,MyGallery重写了构造函数。构造函数使用了手势GestureDetector,添加简单手势监听,实现双击缩放图片局部;添加了屏幕触摸监听,实现双指滑动缩放图片。MyGallery重写了划屏函数,实现滑动Gallery的换屏和移动图片。 Android平台手机图片浏览软件的开发实现(11):http://www.751com.cn/jisuanji/lunwen_2019.html