第一个Android项目——计算器
效果
开始学Android一两个星期了,学习了一下基本的Activity、简单控件及几个简单布局,打算找个东西来练练手,于是就选择发计算器。关于计算器中用到的四则运算在上一篇博客表达式(四则运算)计算的算法中已经讲了。这里不再赘述。
先看一下要达成的效果图:
图1
这里只用到了一个Activity,有EditText、Button两个控件组成,所以比较简单。
布局
这里用到了三种布局:
LinearLayout:一个整体的垂直的线性布局
有几个属性解释一下:
android:layout_width="match_parent"layout宽度,match_parent匹配父控件,在这里就是Activity
android:layout_height="match_parent"layoutr高度
android:orientation="vertical"定义为垂直方向
tools:context=".MainActivity"对应的Activity的java文件
RelativeLayout:相对布局,用于控制backspace和clear按钮
android:layout_alignParentTop="true"与父窗口顶部对齐
android:layout_toLeftOf="@+id/clear"在clear组件的大侧
android:layout_alignParentRight="true"与父窗口右端对齐
android:padding="18dip"组件之前的空隙
android:gravity="center"组件中文本的对齐方式
TableLayout一个4*5的表格布局,用于存放数字和符号按钮
事件监听
我知道的事件监听有两种方式:
一种是先获得控件的对象,再通过控件对象设置监听setOnClickListener();如:
Buttonbackspace=(Button)findViewById(R.id.backspace);
backspace.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewv){
//TODOAuto-generatedmethodstub
}
}
);
另一种方法是定义一个方法,通过getTag获得控件,然后为多个控件添加监听事件。
publicvoidonClickTransaction(Viewv){
//backspaceandclear
if("backspace".equals(v.getTag())){
//dosomething
}elseif("clear".equals(v.getTag())){
//dosomething
}
}
然后在xml文件中对应的控件上设置该监听的函数名
<Button
android:onClick="onClickTransaction"
android:tag="1"
android:layout_height="fill_parent"
android:id="@+id/row0col0"
android:layout_gravity="center_vertical"
android:gravity="center"
android:padding="2dip"
android:text="@string/row0col0">
</Button>
PS:
我在做这个项目的时候遇到一个很诡异的问题,大家交流一下。在我做出了整体的布局如上面的图1中的时候,相应的监听也加进去了,监听都没有问题。在加最后一个“=”按钮的监听时就不行了,一点按钮就崩溃,后面把最后一个按钮的监听事件去掉了,还是有问题。找了半天没有找到,叫老师过来用debug找了半个小时也没有找到什么错误。后来我一个同学,帮我一点点地试,发现好像什么id生成错误,后面eclipse的project/clean...清除一下缓存,重新编译一下,一切问题都没有了,运行良好。
当你遇到一些比较诡异的问题老是解决不了,你也不防试一下eclipse的project/clean清除一下缓存,也许问题就解决了。
项目下载:http://download.csdn.net/download/luoweifu/6041661
分享到:
相关推荐
本文档将探讨如何设计一个基于Android平台的简易计算器应用程序,主要涉及Android开发环境的搭建、Activity的使用、Intent的传递以及布局管理。 首先,Android作为全球领先的移动开发平台,其开放性、灵活性和强大...
建立第一个Android项目(Hello Android!) Android应用程序架构——从此开始 可视化的界面开发工具 部署应用程序到Android手机 该作品是PDF文件格式请下载 福昕PDF阅读器 第3章 用户人机界面 3.1...
### 深入浅出Android——Android开发经典教材 #### Android简介 - **定义与历史**:“Android”一词在本书中特指由Google主导开发的一款基于Linux内核的开源移动操作系统。它最初由Andy Rubin于2003年创立,并在...
1. **创建布局**:计算器的界面设计是项目的第一步。使用XML布局文件,我们可以定义按钮(Button)和显示区域(TextView)。布局文件通常放在`res/layout`目录下。例如,我们可能创建一个名为`activity_calculator....
这个项目可以帮助开发者了解Android应用的基本架构、用户界面设计以及事件处理等核心概念。 首先,我们需要理解Android应用程序的基础——Activity。Activity是Android应用中的一个组件,它负责与用户交互。在这个...
在本项目中,我们关注的是一个适合初学者的Android应用程序开发案例——一个简易的计算器。这个项目使用了Java编程语言,并在Android Studio集成开发环境中进行构建。以下是对这个主题的详细解析: 1. **Android ...
2.2 建立第一个Android项目(Hello Android!) 2.3 Android应用程序架构——从此开始 2.4 可视化的界面开发工具 2.5 部署应用程序到Android手机 第3章 用户人机界面 3.1 更改与显示文字...
5.2.6实例——计算器 5.2.7 使用图片按钮——ImageButton 5.2.8 使用复选框——CheckBox 5.2.9实例——请同意本协议 5.2.10 使用单选框——RadioGroup 5.2.11 实例——请选择性别 5.2.12使用下拉列表框——Spinner ...
在第一行按钮中,我们看到“mc”,“m+”,“m-”和“mr”按钮,分别对应清除内存、存储加法、存储减法和读取内存的功能。第二行有“C”按钮用于清除输入,`"+/-"`按钮切换正负号,以及“/”和“*”按钮进行除法和...
《深入解析Android Java源码——基于ScientificCalculator项目》 在Android开发中,科学计算器(Scientific Calculator)是一个常见的功能,它提供了比普通计算器更高级的运算能力,如对数、指数、平方根等。本篇...
2.2 建立第一个Android项目(HelloAndroid!) 2.3 Android应用程序架构——从此开始 2.4 可视化的界面开发工具 2.5 部署应用程序到Android手机 第3章 用户人机界面 3.1 更改与显示文字标签——TextView标签的使用 ...
2.2 建立第一个Android项目(HelloAndroid!) 2.3 Android应用程序架构——从此开始 2.4 可视化的界面开发工具 2.5 部署应用程序到Android手机 第3章 用户人机界面 3.1 更改与显示文字标签——TextView标签的使用 ...
2.2 建立第一个Android项目(HelloAndroid!) 2.3 Android应用程序架构——从此开始 2.4 可视化的界面开发工具 2.5 部署应用程序到Android手机 第3章 用户人机界面 3.1 更改与显示文字标签——TextView标签的使用 ...
5.2.6实例——计算器 5.2.7 使用图片按钮——ImageButton 5.2.8 使用复选框——CheckBox 5.2.9实例——请同意本协议 5.2.10 使用单选框——RadioGroup 5.2.11 实例——请选择性别 5.2.12使用下拉列表框——Spinner ...
本实例聚焦于一个基础且实用的安卓应用——计算器,它能帮助开发者熟悉UI设计、事件处理、运算逻辑等基本编程概念。同时,我们还将引入arity-2.1.2.jar库,进一步增强应用功能。下面将详细探讨这两个方面。 首先,...
2.2 建立第一个Android项目(HelloAndroid!) 2.3 Android应用程序架构——从此开始 2.4 可视化的界面开发工具 2.5 部署应用程序到Android手机 第3章 用户人机界面 3.1 更改与显示文字标签——TextView标签的使用 ...
2.2 建立第一个Android项目(HelloAndroid!) 2.3 Android应用程序架构——从此开始 2.4 可视化的界面开发工具 2.5 部署应用程序到Android手机 第3章 用户人机界面 3.1 更改与显示文字标签——TextView标签的...