Android设计文档.docx

上传人:牧羊曲112 文档编号:3060322 上传时间:2023-03-10 格式:DOCX 页数:10 大小:40.32KB
返回 下载 相关 举报
Android设计文档.docx_第1页
第1页 / 共10页
Android设计文档.docx_第2页
第2页 / 共10页
Android设计文档.docx_第3页
第3页 / 共10页
Android设计文档.docx_第4页
第4页 / 共10页
Android设计文档.docx_第5页
第5页 / 共10页
亲,该文档总共10页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《Android设计文档.docx》由会员分享,可在线阅读,更多相关《Android设计文档.docx(10页珍藏版)》请在三一办公上搜索。

1、Android设计文档4 Android校园通软件的设计与实现 4.1 研究目标 (1) 了解Android应用程序的设计和开发过程; (2) 使用多种组件进行Android 平台校园资讯软件的开发。 本软件是基于Eclipse的开发环境,在Android平台上的手机校园资讯软件。 4.2 需求分析 本软件是Android平台的一个校园资讯程序,启动程序后查阅学校相关资讯包括在学校吃住娱乐风景等各方面的讯息。 从上面的描述中可以基本了解软件的功能需求: (1) 首先是学校电影院每周电影的更新; (2) 其次有学校的各种资料; (3) 各种校园活动及周边娱乐设施的信息; (4) 校园校景美图查看

2、; (5) 校园生活手册; (6) 扩展内容“我的资料”,及“更多”两个Activity。 4.3 UI界面设计 根据需求分析可以知道,应用程序应包含五个主要的用户界面,这里需要进一步分析每个用户界面中应该包括哪些显示内容。 在首页中,需要对学校的大致情况做以介绍,并且有每周影讯的功能。在“分类”中,有各种学校的相关资料。包括娱乐,电影,纪录片,校景,公开课及生活。另外,还有扩展内容“我的资料”及“更多”两个选项卡如图4-1所示。 图4-1 用户界面草图 4.4程序模块设计 从功能需求上分析可以看出,整个应用程序应划分为5个模块,分别是首 首页介绍学校的一个总体情况,分类是整个软件的核心,其中

3、包括了软件页、分类、搜索、我的资料和扩展功能区。 的各种主要功能,搜索是一个数据库搜索系统,我的资料是个人资料和数据的一个整合和提供了一些简单的小服务,更多则是后期的一些扩展功能。 完成。 在完成用户界面设计、数据库设计和模块设计后,至此程序设计阶段基本4.5软件功能图 校园通软件 首页分类影院信息我的资料更多娱乐电影纪录片校景查询热门查询我的课程我的备忘我的日程我的分享图4-2 软件功能图 4.6文件结构与用途 在程序开发阶段,首先确定“Android平台校园通软件”的工程名为MySchool,据程序模块设计的内容,建立MySchool工程。MySchool工程源代码的结构如图5.1所示。

4、为了使源代码文件的结构更加清晰,MySchool工程设置了多个命名空间,分别用来保存用户界面、数据库和工具实体的源代码文件,源代码文件的名称以及说明。 图4-2 MySchool工程的源代码文件 包 名 称 com.hs.xyt 文 件 名 MainActivity.java 说 明 MainActivity所在 com.hs.xyt.account AccountActivity.java “我的资料”的Activity com.hs.xyt.channel ChannelActivity.java “分类”的Activity com.hs.xyt.home com.hs.xyt.more

5、com.hs.xyt.search com.hs.xyt.widget HomeActivity.java MoreActivity.java SearchActivity.java WidgetActivity.java “主页”的Activity “更多”的Activity “搜索”的Activity 当前信息类 表4-1 MySchool工程的文件用途说明 Android的资源文件保存在/res的子目录中。其中、/res/anim目录中保存的是产生动画效果的XML文件,/res/drawable/目录中保存的是图像文件,/res/values目录中保存的是用来自定义字符串和颜色的文件,/

6、res/xml目录中保存的是XML格式的数据文件。所有在程序开发阶段可以被调用的资源都保存在这些目录中,具体每个资源文件的用途可以参考表5.2: 资源目录 文 件 Grallery_in.xml left_in.xml anim left_out.xml right_in.xml left_out.xml icon1.png drawable icon2.png icon3.png home.xml channel.xml layout search.xml . values style.xml strings.xml drawbles.xml 4.7 程序主要代码 在介绍MySchool的核

7、心代码前,首先了解一下MainActivity.java。 (1) MainActivity.java的部分代码: publicstatic String TAB_TAG_HOME = home; publicstatic String TAB_TAG_CHANNEL = channel; publicstatic String TAB_TAG_ACCOUNT = account; publicstatic String TAB_TAG_SEARCH = search; publicstatic String TAB_TAB_MORE = more; mCateText4, “首页”的布局 “

8、分类”的布局 “搜索”的布局 还有很多的layout,不赘述 保存样式的XML文件 保存字符串的XML的文件 AppWidget的属性文件 这个文件夹里是工程里所用的图片,此处不赘述。 说 明 图片进入效果 画面转换位置移动动画效果 画面转换位置移动动画效果 画面转换位置移动动画效果 画面转换位置移动动画效果 表4.2 资源文件名称与用途 ImageViewmBut1, mBut2, mBut3, mBut4, mBut5; TextViewmCateText1,mCateText2, mCateText3, mCateText5; Intent mHomeItent, mChannelInt

9、ent, mSearchIntent, mAccountIntent, mAccountIntent, mMoreIntent; 先声明了用到的组件。从代码中可以看出,MainActivity的主要功能就是软件的导航栏。 (2) ChannelActivity.java的部分代码: privatevoidfindviews fun =(Button)findViewById(R.id.channel_type_fun); movie=(Button)findViewById(R.id.channel_type_movie); record=(Button)findViewById(R.id.c

10、hannel_type_record); tourism=(Button)findViewById(R.id.channel_type_tourism); publicity=(Button)findViewById(R.id.channel_type_publicity); clips=(Button)findViewById(R.id.channel_type_clips); privatevoidsetListensers fun.setOnClickListener(clickfun); movie.setOnClickListener(clickmovie); record.setO

11、nClickListener(clickrecord); tourism.setOnClickListener(clicktourism); publicity.setOnClickListener(clickpublicity); clips.setOnClickListener(clickclips); PrivateButton.OnClickListenerclickfun= newButton.OnClickListener publicvoidonClick(View v) Intent funint = newIntent; funint.setClass(ChannelActi

12、vity.this, FunActivity.class); startActivity(funint); ; 从代码中可以看出,WidgetEntity类中有fun,movie,record,tourism,publicity,clips这6个功能模块。而该页的功能就是作为这六个功能的实现也简单描述一下。 FunActivity.java中的部分代码 ExpandableListViewexpandableList; TreeViewAdapteradapter; SuperTreeViewAdaptersuperAdapter; Button btnNormal, btnSuper; 设置

13、了二级菜单显示校内娱乐,三级菜单显示校外娱乐 expandableList.setAdapter(adapter); expandableList.setOnChildClickListener(newOnChildClickListener Override publicbooleanonChildClick(ExpandableListView arg0, View arg1, int parent, int children, long arg4) String str = 欢迎各位同学积极参加 ; Toast.makeText(FunActivity.this, str, 300).s

14、how; returnfalse; ); 用Toast做了友情小提示。以上是Toast的实现代 publicstaticfinalintItemHeight = 40;/ 每项的高度 publicstaticfinalintPaddingLeft = 30;/ 每项的高度 privateintmyPaddingLeft = 0;/ 如果是由SuperTreeView调用,则作为子项需要往右移 staticpublicTextViewgetTextView(Context context) AbsListView.LayoutParamslp = newAbsListView.LayoutPar

15、ams( ViewGroup.LayoutParams.FILL_PARENT, ItemHeight); TextViewtextView = newTextView(context); textView.setLayoutParams(lp); textView.setGravity(Gravity.CENTER_VERTICAL | Gravity.LEFT); returntextView; public View getChildView(intgroupPosition, intchildPosition, booleanisLastChild, View convertView,

16、 ViewGroup parent) TextViewtextView = getTextView(this.parentContext); textView.setText(getChild(groupPosition, 码,其中包括了显示内容,显示类型及显示时间。 childPosition).toString); textView.setPadding(myPaddingLeft + PaddingLeft, 0, 0, 0); returntextView; public View getGroupView(intgroupPosition, booleanisExpanded, Vi

17、ew convertView, ViewGroup parent) TextViewtextView = getTextView(this.parentContext); textView.setText(getGroup(groupPosition).toString); textView.setPadding(myPaddingLeft + (PaddingLeft 1), 0, 0, 0); returntextView; 二级菜单的具体代码。 菜单内容实现方式,数据继承位置的设定,及具体显示方式。 (4)TourismActivity.java中的部分代码。 public View g

18、etView(int position, View convertView, ViewGroup parent) ViewHolderviewHolder; if (convertView = null) convertView = inflater.inflate(R.layout.picture_item, null); viewHolder = newViewHolder; viewHolder.title = (TextView) convertView.findViewById(R.id.title); viewHolder.image = (ImageView) convertVi

19、ew.findViewById(R.id.image); convertView.setTag(viewHolder); else viewHolder = (ViewHolder) convertView.getTag; viewHolder.title.setText(pictures.get(position).getTitle); viewHolder.image.setImageResource(pictures.get(position).getImageId); returnconvertView; 使用gridView控件来实现图片的显示,并绑定一个textview来实现文字和图片成组显示。 4.8用户界面 在用户界面设计上,采用了咨询软件框架结构,提供直观的交互操作。五个用户界面风格简约、操作简便,用户体验将非常好。 4.9 系统测试 至此已经完成了MySchool工程的代码编写工作,在这一节对MySchool工程进行测试,步骤及结果如下: (1) 启动Android虚拟机 在工程名Myschool上点右键,然后选择“Run As”,然后选择“Android Application”。 Android虚拟机启动较慢。如下图所示: (2) “分类”页功能演示

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号