android课程设计报告河北科技大学

上传人:公**** 文档编号:576224719 上传时间:2024-08-19 格式:PDF 页数:23 大小:728.29KB
返回 下载 相关 举报
android课程设计报告河北科技大学_第1页
第1页 / 共23页
android课程设计报告河北科技大学_第2页
第2页 / 共23页
android课程设计报告河北科技大学_第3页
第3页 / 共23页
android课程设计报告河北科技大学_第4页
第4页 / 共23页
android课程设计报告河北科技大学_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《android课程设计报告河北科技大学》由会员分享,可在线阅读,更多相关《android课程设计报告河北科技大学(23页珍藏版)》请在金锄头文库上搜索。

1、 android 课程设计报告河北科技大学 The pony was revised in January 2021 河北科技大学 课程设计报告 学生姓名: 学 号: 专业班级: 计算机 班 课程名称: Android 智能手机软件开发 学年学期: 2011 学年 第一学期 指导教师: 高凯 2 0 11 年 12 月 课程设计成绩评定表 学生姓名 学 号 成绩 专业班级 起止时间 设计题目 设计编写一个简单的计算器 指 导 教 师 评 语 指导教师: 年 月 日 一、概述 设计编写一个能在 Android 系统下运行的计算器,除了能实现四则运算外,还带有菜单的功能。菜单中拥有的 Item 有

2、:1 退出键按下时弹出一个对话框提示是否确认退出;2 帮助键按下后显示帮助信息,并能从帮助界面返回到主界面;3About 键按下后弹出就算器的版本信息;4 换肤键按下后更换皮肤。 二、项目设计与实现 先写好布局文件,代码如下: android:orientation=vertical android:layout_width=fill_parent android:layout_height=fill_parent 说明:此 Activity 采用嵌套式 LinearLayout 布局,最外层的 LinearLayout 嵌入六个 LinearLayout,此时 LinearLayout的 a

3、ndroid:orientation=vertical即采用垂直布局。嵌入的六个 LinearLayout 除第一个采用垂直布局外其他的均采用水平布局。第一个LinearLayout 控制两个 EditText 的位置,剩下的五个 LinearLayout 控制 20 个按钮的布局。为使软件能适应不同分辨率的手机,所有控件的 layout_width 和 layout_height属性都设为 fill_parent,而控制按钮大小通过设置 layout_weight 的大小来控制。这样控件的大小就只和屏幕大小和控件占屏幕的比例有关。 显示效果如下: Activity 的界面 计算器的基本功能实

4、现 接下来就是对各个按钮绑定监听器,实现算术式的输入功能和计算输入的算术式值的功能。根据各个按钮的功能可将将它们分为四类:Clean 按钮为一类,Delete为一类,等号按钮为一类,其他的作为基本算式输入按钮可看做一类。由此写四个监听器类,分别实现按钮的各个功能。 Clean 功能是清空两个 Edittext 中的内容,实现原理也就是 Clean 按钮绑定的监听器,代码如下: oString(); ExpressionParser ep=new ExpressionParser(str); try double result=(); String result_str=(result); (r

5、esult_str); catch (Exception e) 创建两个堆栈,一个用来放数据(numStack),一个用来放算术符(chStack); 2. 从左到右读入算术式,如果读到的是数字,则压入(push)到数据堆栈(numStack)中。若读到的是算术符,先判断 chStack 栈顶元素,若栈顶元素优先级大于读到的算术符,则先将栈顶元素和 numStack 中两个数拿出来计算,再将读到的算术符压入 chStack 中,若读到的算术符优先级大于栈顶元素,则将读到的算术符压入 chStack 中。如果读到的是右括号则不断将 chStack 和 numStack 中的内容拿出来计算,直到从

6、 chStack 中拿出左括号为止; 3. 若读到了算术式的最后,则将两堆栈中的内容全拿出来计算,最后结果放在numStack 中。这里的左括号的优先级最低,其次为加号和减号,最高为乘号和除号。 基本算式输入按钮实现的功能不仅要能输入基本的数字和算术符,还要有简单的纠错功能,如不能连续输入两个小数点、右括号数必须和左括号数对应、不能连续输入两个加减乘除等。 Menu 设计 使用 Menu 菜单实现退出、查看帮助文档、更换皮肤和查看版本信息的功能,如图所示。 图 菜单界面 菜单可以采用 xml 实现,先在 res 文件夹中新建 Android XML File,选择 Menu类型,如图所示: 图

7、 新建 XML 文件 之后,此 XML 文件保存在 layout 文件夹下面的 Menu 文件夹下。然后在文件中添加需要添加的 item,这里添加“Exit”、“Help”、“Skin”、“About”四个Item,相关代码如下: Menu 类型的布局文件采用 Linearlayout 布局方式,不能改变,系统自动根据加入 item 的多少设置显示行数,如若本示例中只加入两个按钮,则只会显示一行。当然,只有布局文件是不能在 Activity 中显示 Menu 菜单的,还得在主程序中加入相应代码。 public boolean onCreateOptionsMenu(Menu menu) Men

8、uInflater inflater = getMenuInflater(); return (menu); inflate 方法是菜单层次从一个指定的 xml 资源去填充,这里指定的是前面所写的,如果有错误会抛出 InflateException 信息。接下来就是给各个 item 添加功能了。这里采用调用 onOptionsItemSelected(MenuItem item)方法实现。各个 item 实现的功能是:点击“Exit”退出计算器并弹出确认退出对话框;点击“Help”转换Activity,显示帮助信息;点击“about”显示计算器版本信息对话框;点击“Skin”跟换计算器皮肤。 public boolean onOptionsItemSelected(MenuItem item) ndroid 学习文档 2匿名网友.给定任意的一个含数学运算符的字符串,怎么求这个字符串转换成数学表达式的值OL.2011-10-10. 五、致谢 首先得由衷感谢高凯老师的悉心教导与指引,没有老师的教导与指引是不可能了解到 Android 的魅力,更无法完成此次课程设计。也感谢和我一起学习的同学,与你们一起学习与讨论问题让我受益匪浅。还得感谢我宿舍的舍友,体谅我在周末时早起,在学习过程中给予我支持与鼓励。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号