今天没事干,做了个单击事件的练习。

截图如下:(一个小小的计算器)

XMl文件中的代码:

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"> <TextView
android:id="@+id/startTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="请输入NUMBER:" /> <EditText
android:id="@+id/num1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10" />
<EditText
android:id="@+id/num2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" > <Button
android:id="@+id/btnAdd"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="+" /> <Button
android:id="@+id/btnSub"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="-" /> <Button
android:id="@+id/btnMul"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="×" /> <Button
android:id="@+id/btnDiv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="÷" />
</LinearLayout> <TextView
android:id="@+id/showResult"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/> </LinearLayout>

Activity代码:

package com.example.clickproject;

import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView; public class MainActivity extends Activity {
private EditText num1 = null;
private EditText num2 = null;
private TextView showResult = null;
private Button btnAdd = null;
private Button btnSub = null;
private Button btnMul = null;
private Button btnDiv = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
num1 = (EditText) super.findViewById(R.id.num1);
num2 = (EditText) super.findViewById(R.id.num2);
showResult = (TextView) super.findViewById(R.id.showResult);
btnAdd = (Button) super.findViewById(R.id.btnAdd);
btnSub = (Button) super.findViewById(R.id.btnSub);
btnMul = (Button) super.findViewById(R.id.btnMul);
btnDiv = (Button) super.findViewById(R.id.btnDiv); btnAdd.setOnClickListener(new AddOnclickListener());
btnSub.setOnClickListener(new SubOnclickListener());
btnMul.setOnClickListener(new MulOnclickListener());
btnDiv.setOnClickListener(new DivOnclickListener());
}
/**
* 加法监听子类
* ClassName AddOnclickListener
* Description TODO(这里用一句话描述这个类的作用)
* @author 石头杨 北科维拓公司
* date 2013-7-26 下午01:58:32
*
*/
private class AddOnclickListener implements OnClickListener{ @Override
public void onClick(View v) {
float a = Float.parseFloat(MainActivity.this.num1.getText().toString());
float b = Float.parseFloat(MainActivity.this.num2.getText().toString());
float c = a+b;
MainActivity.this.showResult.setText("结果:【"+a+"】 【+】 【"+b+"】 【=】"+c);
} }
/**
* 减法监听子类
* ClassName SubOnclickListener
* Description TODO(这里用一句话描述这个类的作用)
* @author 石头杨 北科维拓公司
* date 2013-7-26 下午01:58:56
*
*/
private class SubOnclickListener implements OnClickListener{ @Override
public void onClick(View v) {
float a = Float.parseFloat(MainActivity.this.num1.getText().toString());
float b = Float.parseFloat(MainActivity.this.num2.getText().toString());
float c = a-b;
MainActivity.this.showResult.setText("结果:【"+a+"】 【-】 【"+b+"】 【=】"+c);
} }
/**
* 乘法监听子类
* ClassName MulOnclickListener
* Description TODO(这里用一句话描述这个类的作用)
* @author 石头杨 北科维拓公司
* date 2013-7-26 下午01:59:11
*
*/
private class MulOnclickListener implements OnClickListener{ @Override
public void onClick(View v) {
float a = Float.parseFloat(MainActivity.this.num1.getText().toString());
float b = Float.parseFloat(MainActivity.this.num2.getText().toString());
float c = a*b;
MainActivity.this.showResult.setText("结果:【"+a+"】 【*】 【"+b+"】 【=】"+c);
} }
/**
* 除法监听子类
* ClassName DivOnclickListener
* Description TODO(这里用一句话描述这个类的作用)
* @author 石头杨 北科维拓公司
* date 2013-7-26 下午01:59:22
*
*/
private class DivOnclickListener implements OnClickListener{ @Override
public void onClick(View v) {
float a = Float.parseFloat(MainActivity.this.num1.getText().toString());
float b = Float.parseFloat(MainActivity.this.num2.getText().toString());
float c = a/b;
MainActivity.this.showResult.setText("结果:【"+a+"】 【/】 【"+b+"】 【=】"+c);
} } }

Android——例子:简单计算器的更多相关文章

  1. 菜鸟学Android编程——简单计算器《一》

    菜鸟瞎搞,高手莫进 本人菜鸟一枚,最近在学Android编程,网上看了一些视频教程,于是想着平时手机上的计算器应该很简单,自己何不尝试着做一个呢? 于是就冒冒失失的开撸了. 简单计算器嘛,功能当然很少 ...

  2. 每天2个android小例子----简单计算器源代码

    通过Android4.0 网格布局GridLayout来实现一个简单的计算器界面布局 package com.android.xiong.gridlayoutTest; import java.mat ...

  3. android实现简单计算器

    前台代码如下 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:andro ...

  4. 简单计算器 安卓 Android 作业

    Android老师布置的课程作业——简单计算器 功能要求实现四则运算,参考界面见下图: 首先给各位老铁提供apk安装包以及项目压缩包,略表诚意~ github地址:https://github.com ...

  5. Android 简单计算器实现源码

    1.string.xml代码 <?xml version="1.0" encoding="utf-8"?> <resources> &l ...

  6. Android发展简单介绍

    Android一词的本义指“机器人”,同一时候也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统.中间件.用户界面和应用软件组成,号称是首个为移动 ...

  7. android Glide简单使用

    版权声明:大家可以转载,请写明转载申明 https://blog.csdn.net/bzlj2912009596/article/details/81702367 今天,简单讲讲Android里Gli ...

  8. C语言,简单计算器【上】

    由于工作需要最近在研究PHP扩展,无可避免的涉及到了C语言.从出了学校以后C语言在实际工作中还没有用到过,所以必须要先进行一点复习工作.个人认为对于熟悉一样东西说最好的方法是上手实践.于是便想起了当时 ...

  9. hdu1237 简单计算器[STL 栈]

    目录 题目地址 题干 代码和解释 参考 题目地址 hdu1237 题干 代码和解释 解本题时使用了STL 栈,要记得使用#include<stack>. 解本题时使用了isdigit()函 ...

  10. 1.C#WinForm基础制作简单计算器

    利用c#语言编写简单计算器: 核心知识点: MessageBox.Show(Convert.ToString(comboBox1.SelectedIndex));//下拉序号 MessageBox.S ...

随机推荐

  1. Linux修改系统以及pip更新源

    Linux修改系统以及pip更新源 时间:2015-08-01来源:csdn 作者:henulwj 修改系统更新源 你是否跟我一样在刚看时接触Linux时被系统更新源问题搞得晕头转向,不同的Linux ...

  2. java中的反射机制,以及如何通过反射获取一个类的构造方法 ,成员变量,方法,详细。。

    首先先说一下类的加载,流程.只有明确了类这个对象的存在才可以更好的理解反射的原因,以及反射的机制. 一.  类的加载 当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三 ...

  3. HTTP 请求未经客户端身份验证方案“Anonymous”授权。从服务器收到的身份验证标头为“Negotiate,NTLM”

    转自:http://www.cnblogs.com/geqinggao/p/3270499.html 近来项目需要Web Service验证授权,一般有两种解决方案: 1.通过通过SOAP Heade ...

  4. win8以上系统,设置英文为默认输入法

    说明:这里将添加“简体中文(美式键盘)”,也就是英文输入法,并设置为默认输入法. 1.打开控制面板—时钟.语言和区域—语言,点击“添加语言”,选择“英语”—打开,选择“英语(美国)” —添加. 2.选 ...

  5. Spring集成memcached的详细介绍

    前提条件:工程需要引入jar包java_memcached-release_2.0.1.jar 第一步:添加memcached的配置文件. <bean class="org.sprin ...

  6. ACM题目————Anagram

    Description You are to write a program that has to generate all possible words from a given set of l ...

  7. [转载]Android系统开机画面的实现

    Android系统开机画面分为下面三个阶段: 1.开机图片:Android内核是基于标准内核的,对linux比较熟悉,特别是在开发板上移植过Linux系统的人就知道在内核引导过程中会显 示出一 个小企 ...

  8. Android invalidate() 和 postInvalidate()的区别

    Android提供了Invalidate方法实现界面刷新,但是Invalidate不能直接在线程中调用,因为他是违背了单线程模型:Android UI操作并不是线程安全的,并且这些操作必须在UI线程中 ...

  9. 关于List.ToArray()方法的效率测试

    之前一直认为因为List内部是数组,ToArray的实现只是将数组返回出去而已. 今天测了一下发现并不是那样 var a = new List<int>(); ; i < ; i++ ...

  10. N-gram介绍

    在实际应用中,我们经常需要解决这样一类问题:如何计算一个句子的概率?如: 机器翻译:P(high winds tonite) > P(large winds tonite) 拼写纠错:P(abo ...