ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:432.38KB ,
资源ID:17070246      下载积分:2 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17070246.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(安卓计算器小程序Word格式文档下载.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

安卓计算器小程序Word格式文档下载.docx

1、不过IBM声称SWT比其他Java窗口组件更有效率。Eclipse的用户界面还使用了GUI中间层JFace,从而简化了基于SWT的应用程序的构建。Eclipse的设计思想是:一切皆插件。Eclipse核心很小,其他所有功能都以插件的形式附加于Eclipse核心之上。Eclipse基于内核包括:图形API(SWT/JFace),Java开发环境插件(JDT),插件开发环境(PDE)等。Eclipse的插件机制是轻型软件组件化架构。在富客户机平台上,Eclipse使用插件来提供所有的附加功能,例如支持Java以外的其他语言。已有的分离的插件已经能够支持C/C+(CDT)、Perl、Ruby、Pyt

2、hon、telnet和数据库开发。插件架构能够支持将任意的扩展加入到现有环境中,例如配置管理,而决不仅仅限于支持各种编程语言。1.4 Android程序基础Android应用程序的构成 1.Activity 顾名思义,Activity就是活动。应用程序必须至少包含一个Activity。Activity提供了一个虚拟的用户接口,每一个Activity都有一个默认的窗口可以用来显示用户界面,一般情况下,它是全屏的窗口。例如,影音播放软件的每个用户界面就是Activity。 2.Service Service与Activity的主要区别在于,Service是在后台活动的,它没有用户界面。典型的应用场

3、景是,用户选择了一个播放列表开始播放后,离开了该用户界面(Activity),如果仍然希望歌曲不会暂停,就可以用Service去调用播放器,而不是在Activity中调用播放器。 3.Intent 在Android中,每一个行为都可以抽象为一个Intent。可以简单地把Intent理解为一个包含了数据的消息。Intent可以用于启动一个Act-ivity或者Service,可以用于进程间的通信。事实上,应用程序的启动也是通过Intent实现的。 4.Content providers Android平台内置了一套SQLite数据储存机制,并包含一系列管理SQLite Database的相关方法

4、。在应用程序中,可以通过Content prov-iders访问数据库。每个Content provider都定义了一系列的方法用于访问它对应的数据库。应用程序在新建数据库时也可以定义相应的Con-tent provider用于向其他应用程序共享数据。一般情况下,应用程序不直接调用Content provider定义的函数,而是通过ContentResolver间接调用。第2章 系统分析与设计2.1系统的可行性分析可行性研究是为了弄清楚系统开发的项目是不是可以实现和值得进行研究的过程,实际上是一次大大简化系统分析和系统设计的过程,所以,进行可执行性的分析是非常必要的,也是很重要的,经过最初的设

5、计目标和进行的实时调查得出以下四点的可行性分析:(1)技术可行性:Eclipse + Android ADT的技术已经较为成熟,通过SUN公司(现被ORCEL公司收购)推出的跨平台、动态的JAVA语言进行开发。(2)运行可行性:该系统需要Android虚拟机环境,Eclipse中安装ADT,DDMS等Google Android相关插件。其运行环境已经相当稳定,它功能丰富,包括了完备的Android程序的编码、调试、测试和发布功能,其中支持所有Android应用开发相关技术,包括SQLite,Skia,3D制作,Android XML,能够很好的发布Android的应用程序APK包。(3)法律

6、可行性:因为是自主开发设计,所以不会构成侵权,在法律上是可行的。通过以上的可行性分析,将采用Eclipse+Android ADT + DDMS技术,运用JAVA语言进行系统的开发。2.2 系统的需求分析根据分析需求,这个系统必须实现以下的功能:(1) 实现简单的数字计算功能。作为计算器,其核心就是加减乘除。(2) 能够在手机里面以良好的界面。简单计算器能够给予用户良好的人机互动界面。2.3 系统的优势Android是以Linux为核心的手机操作平台,作为一款开放式的操作系统,随着Android的快速发展,如今已允许开发者使用多种编程语言来开发Android应用程序,而不再是以前只能使用Jav

7、a开发Android应用程序的单一局面,因而受到众多开发者的欢迎,成为真正意义上的开放式操作系统。本次课程设计一个简易的计算器。主要了解Activity的创建和Intent的使用。Intent不仅可以连接两个Activity。而且可以传递数据。下面是整个程序的设计流程。2.4 系统的流程图 本程序的流程是一个开机画面,开机画面之后就是计算机的主页面了所有这个简单程序的流程图如图2.1所示。第一个Activity第二个加法减法除法乘法图2.1 程序流程图第3章 系统详细设计3.1 动作Activity 参照程序的流程图,设计Activity。分别为进入页面的Activity,和选择运算方式的Ac

8、tivity。在这里应该注意的是每当创建一个新的class,就要继承Activity如图3.1所示。图3.1 程序所需的Activity3.2 布局文件XML相应的,需要在res/layout文件夹中建立XML文件来对上述的十个Activity进行布局,如图3.2所示。 图3.2 3个XML布局文件总体上所需要的Activity和XML布局文件已经建立完毕,下面开始对进入计算器的Activity进行编写,3.3 Activity的详细设计动作模块中CalculatorActivity.java的详细代码如下:package com.android.xiong.gridlayoutTest;im

9、port java.math.BigDecimal;import java.util.regex.Pattern;import com.android.xiong.gridlayoutTest.R.id;import android.os.Bundle;import android.app.Activity;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.Edi

10、tText;import android.widget.GridLayout;import android.widget.TextView;public class MainActivity extends Activity private EditText print; private static String fistNumber = 0;/ 第一次输入的值 private static String secondNumber = / 第二次输入的值 private static String num = / 显示的结果 private static int flg = 0;/ 结果累加

11、一次 public Counts take = null; private int btidTake = R.id.txtdivide, R.id.txtx, R.id.txtmin, R.id.txttakesum ; private Button buttonTake = new ButtonbtidTake.length; private int btidNum = R.id.txt0, R.id.txt1, R.id.txt2, R.id.txt3, R.id.txt4, R.id.txt5, R.id.txt6, R.id.txt7, R.id.txt8, R.id.txt9, R.

12、id.txtspl ; private Button buttons = new ButtonbtidNum.length; private int btcl = R.id.chars, R.id.charx, R.id.txtb, R.id.txtv ; private Button btcls = new Buttonbtcl.length; private GridLayout gly; Override protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setCo

13、ntentView(R.layout.activity_main); gly=(GridLayout)findViewById(R.id.gly); print = (EditText) findViewById(R.id.print); print.setText(); print.setEnabled(false); GetNumber get = new GetNumber(); for (int i = 0; i 1) num = num.substring(0, num.length() - 1); else num = print.setText(num); Button clea

14、r = (Button) findViewById(R.id.clear); clear.setOnClickListener(new OnClickListener() num = fistNumber = secondNumber = num; flg = 0; btcl.length; btclsi = (Button) findViewById(btcli); btclsi.setOnClickListener(new OnTake(); / 给 EditText赋值 class GetNumber implements OnClickListener Override public

15、void onClick(View v) / TODO Auto-generated method stub if (flg = 1) if (num.equals( print.setText( num = v.getId() = R.id.txtspl ? : String txt = (Button) v).getText().toString(); boolean s = Pattern.matches(-*(d+).?(d)*, num + txt); num = s ? (num + txt) : num; gly.setBackgroundResource(R.drawable.

16、js); print.setText(num); / 根据条件计算 class Compute implements OnClickListener public void onClick(View arg0) fistNumber = print.getText().toString(); switch (arg0.getId() case R.id.txttakesum: take = Counts.ADD; break; case R.id.txtmin: take = Counts.MINUS; case R.id.txtx: take = Counts.MULTIPLY; case

17、R.id.txtdivide: take = Counts.DIVIDE; num = flg = 0; class OnTake implements OnClickListener switch (v.getId() case R.id.chars:- + num; case R.id.charx: if(!num.equals() num = BigDecimal.valueOf(1).divide(new BigDecimal(num),12,BigDecimal.ROUND_UP).stripTrailingZeros() .toString(); case R.id.txtb: n

18、um = new BigDecimal(num).divide(BigDecimal.valueOf(100),12,BigDecimal.ROUND_UP).stripTrailingZeros() case R.id.txtv: Double numss = Math.sqrt(new BigDecimal(num).doubleValue(); int stratindex=numss.toString().contains(.)?numss.toString().indexOf():0; num = numss.toString().length()13?numss.toString(

19、).substring(0, 12+stratindex):numss.toString(); flg=0; public boolean onCreateOptionsMenu(Menu menu) / Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true;3.4 布局文件XML的详细设计布局文件main.xml编写布局代码如下: Button+id/cleargo120pxlayout_column=layout_gravity=top1text=- /+id/clear3

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1