智能移动终端应用开发设计报告.doc_第1页
智能移动终端应用开发设计报告.doc_第2页
智能移动终端应用开发设计报告.doc_第3页
智能移动终端应用开发设计报告.doc_第4页
智能移动终端应用开发设计报告.doc_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

智能移动终端应用开发设计报告(2013/2014学年第2学期)题 目 : 电子相册 学 院 : 信息与电气工程学院 专 业 : 电子信息工程 姓 名 : 学 号 : 设计成绩 : 2014年5月15日1 软件需求分析本系统应该具有创建相册、浏览相片、上传相片、删除相册或相片、实现随机播放照片以及循环播放照片、可以添加图片的相关说明等功能,功能如图电子相册系统创建相册浏览相片上传相片删除相册或相片播放查看照片添加图片说明图1 电子相册系统功能结构图2 软件总体设计 2.1 软件介绍电子相册是现在时下很流行的一种网络元素,它可以应用于很多的领域。制作好的电子相册可以在电脑上,各类影碟机上,以及手机和MP4里都能观看。当然,如果考虑到长期保存的话,也可以保存在硬盘上,也便于随时调阅、欣赏,永久保存。通过电子相册软件,我们的照片可以更加动态、更加多姿多彩的展现,刻录在光盘上保存,或在影碟机上播放。 电子相册是指可以在电脑上观赏的区别于CD/VCD的静止图片的特殊文档,其内容不局限于摄影照片,也可以包括各种艺术创作图片。电子相册具有传统相册无法比拟的优越性:图、文、声、像并茂的表现手法,随意修改编辑的功能,快速的检索方式,永不褪色的恒久保存特性,以及廉价复制分发的优越手段。 2.2 程序流程图 图2 电子相册系统功能流程图2.3 程序界面图3 电子相册程序主界面图4 电子相册图片文件图5 电子相册图片浏览3 关键技术分析制作电子相册首先要获得图片文件,通过拍摄,可以直接得到电子图片文件。电子相册分两种,一种是软件类型电子相册,一种是硬件类型电子相册。本设计是属于硬件类型的电子相册,一些数码相框只能够显示JPEG这种通用格式的图片,也就是说有些高端产品也是可以显示比如png这类型的图片格式的。大多数数码相框是以幻灯片的形式显示照片的,通常可以通过调节切换时间间隔来达到满意的效果。某些相框还也可以通过互联网上的RSS,图片共享网站还有电子邮件这些媒介来加载图片。而具备这种网络功能的相框通常是支持无线连接的。还有些其他的电子相框可以显示txt文件的。电子相框显示的图片文件通常是从手机存储卡读取的,尽管某些相框还提供内部存储。某些框架电子相框具备使用USB接口从电脑直接传输文件到电子相框的功能。然而,由于价格过高,一般很少有数码相框内置有记忆体的。其中一些人还包括一个或者是可充电电池的。因此,手机安卓版电子相册已经成为浏览图片的一种潮流。4 软件详细设计(1) 创建相册用户可以根据自己的需要来创建新的相册,把照片分类。通过“相册主页”左侧的链接点击“创建相册”进入到“创建目录页面”,根据提示输入新创建的相册名称,选择创建,则新建相册成功,转到新建的相册里。(2) 浏览相册用户可直接或用打开相册的方式浏览主页上的照片和相册里的照片(3)上传相片用户可以根据自己的需要上传照片。通过“相册主页”左侧的链接点击“上传照片”进入到“上传照片页面”,根据提示输入选择上传方式。如果从本地上传,选择“浏览”在本地打开一张照片,点击“上传”则上传照片成功,否则提示“上传文件出错”。上传照片完成后,返回到相册主页或某相册。(4) 删除相片用户可以根据自己的需要删除相册或照片。每个相册和每张照片后面都有“删除”的字样,点击后会出现提示“是否删除”,选择确认则删除成功,返回相册主页;选择取消则无变化,返回相册主页。(5) 添加图片说明用户可以根据自己的需要给已经上传的照片添加相应的说明。选择所要浏览的图片后,在“添加你对照片的描述”文本框上,删除掉“添加你对照片的描述”,并写入你对图片的描述(6) 软件设计基本思路 gallery选中的图片在ImageView中显示出来,ImageView的一个View实际上就是一个ImageView,gllery的一个View也是一个ImageView./通过这个来进行循环 public int getCount() return Integer.MAX_VALUE; /制作View public View getView(int position, View convertView, ViewGroup parent) ImageView image=new ImageView(context); image.setImageResource(preImagesposition%preImages.length); image.setScaleType(ImageView.ScaleType.FIT_XY); image.setLayoutParams(new Gallery.LayoutParams(200, 120);image.setBackgroundResource(typedArray.getResourceId(R.styleable.Gallery_android_galleryItemBackground, 0); return image; /设置View的背景 typedArray = obtainStyledAttributes(R.styleable.Gallery);image.setBackgroundResource(typedArray.getResourceId(R.styleable.Gallery_android_galleryItemBackground, 0); /设置ImageSwitcher中的ImageView switcher.setFactory(new ViewFactory() public View makeView() ImageView image=new ImageView(Scan_pic.this); image.setScaleType(ImageView.ScaleType.FIT_CENTER); image.setLayoutParams(new ImageSwitcher.LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT); return image; ; public class Scan_pic extends Activity private ImageSwitcher switcher; private Gallery gallery; private int preImages; private int afterImages; private int postion; public void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.scanpic); switcher=(ImageSwitcher)findViewById(R.id.imageSwitcher_scan_pic); gallery=(Gallery)findViewById(R.id.gallery1_scan_pic); afterImages=new intR.drawable.after0,R.drawable.after1,R.drawable.after2,R.drawable.after3; preImages=new intR.drawable.pre0,R.drawable.pre1,R.drawable.pre2,R.drawable.pre3; gallery.setAdapter(new ImageAdapter(preImages,Scan_pic.this); /设置gallery的项单击事件,更换ImagerSwitcher中的图片 gallery.setOnItemClickListener(new OnItemClickListener() public void onItemClick(AdapterView arg0, View arg1, int arg2, long arg3) switcher.setImageResource(preImagesarg2%preImages.length); postion=arg2%preImages.length; ; /设置ImageSwitcher中的ImageView switcher.setFactory(new ViewFactory() public View makeView() ImageView image=new ImageView(Scan_pic.this); image.setScaleType(ImageView.ScaleType.FIT_CENTER); image.setLayoutParams(new ImageSwitcher.LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT); return image; ; switcher.setOnClickListener(new OnClickListener() public void onClick(View v) Intent intent=new Intent(Scan_pic.this,StartGame.class); intent.putExtra(position, postion); startActivity(intent); ; class ImageAdapter extends BaseAdapter int preImages; Context context; TypedArray typedArray; public ImageAdapter(int preImages,Context context) this.preImages=preImages; this.context=context; typedArray = obtainStyledAttributes(R.styleable.Gallery); /设置Gallery中的ImageView即每一项的背景 public int getCount() return Integer.MAX_VALUE; /通过这个来进行循环 public Object getItem(int position) return position; public long getItemId(int position) return position; public View getView(int position, View convertView, ViewGroup parent) ImageView image=new ImageView(context); image.setImageResource(preImagesposition%preImages.length); /通过这个来进行循环 image.setScaleType(ImageView.ScaleType.FIT_XY); image.setLayoutParams(new Gallery.LayoutParams(200, 120); image.setBackgroundResource(typedArray.getResourceId(R.styleable.Gallery_android_galleryItemBackground, 0); return image; 5 软件测试方案软件的基本功能都能实现,能实现基本的对手机里面的图片进行浏览,可以左右滑动,或者点击图片下方的按钮实现,如果不想一张张浏览,还可以像播放幻灯片一样的效果来浏览所有图片,点击播放键能实现该功能;点击下方删除键可以实现对图片的删除,对于文件夹,按住不动会出现删除或者返回的选项;如果要对某张图片添加备注或者解释,点击下方按钮实现添加说明功能,直接进行文字的添加或者删除,添加完后返回就立即保存,等要查看图片的说明时,直接双击图片就能出现已经添加的文字说明;不光图片来自手机拍摄,有时候需要上传其它地方来的图片或者相册文件夹,软件也同样可以创建相册,上传照片等。由于系统版本和硬件的原因而导致程序的意外终止,程序代码上存在读写和存取效率的问题,这些问题在日后的编码过程中是能够完全改善的,测试过程中所出现的问题完全不会影响程序的正常运行。6 设计总结通过两周的设计,收获颇丰,我有了学习上的成果的喜悦,在课堂上学java编程,但是那些都是学的皮毛而已,没有真正应用到实际例子中,也很难发现自己的不足,这次设计电子相册,知识得到了扩充,认识得到了加深,也使得我们的自学能力得到了很大的提高,在此,我向老师表示由衷地感谢。这次学习让我对安卓开发又有了新的认识,我们必需边总结边学习,遇到问题要虚心请教老师,学习知识的过程其实就是相互学习相互进步的过程。有些知识点以前没有学过,但我也没有去研究,做设计才突然间觉得自己真的有点无知,虽然现在去看依然可以解决问题,但要浪费许多时间,这一点是我必须在以后的学习中加以改进的地方,同时也要督促自己在学习的过程中不断的完善自我。 我从前觉得以为只要程序编得能够好就行,很少有意识的训练自己对整个系统的设计。而且每次课程题目都是急于编码,根本不从整体考虑系统和设计。显然,这种方法是不可

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论