首先设置两个布局文件,一个布局文件进行输入数据,获取加法运算;另一个布局文件进行显示最终结果。Activity1启动Activity2,并传递计算结果值给Activity2.

main.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical"android:layout_width="fill_parent"android:layout_height="fill_parent">
<EditText android:id="@+id/factorOne"android:layout_width="fill_parent" android:layout_height="wrap_content" />
<TextView  android:id="@+id/symbol"android:layout_width="fill_parent" android:layout_height="wrap_content" />
<EditText android:id="@+id/factorTwo"android:layout_width="fill_parent" android:layout_height="wrap_content" />
<Buttonandroid:id="@+id/calculate"android:layout_width="fill_parent" android:layout_height="wrap_content" />
</LinearLayout>

页面展示:

result.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical"android:layout_width="fill_parent"android:layout_height="fill_parent"><TextViewandroid:id="@+id/result"android:layout_width="fill_parent"android:layout_height="wrap_content"/>
</LinearLayout>

界面展示:

activity03活动:

package mars.activity03;import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
//1.在Activity03当中,要声明四个控件
//2.要为其中的两个控件设置显示的值
//3.创建一个监听器类,监听按钮按下的动作
//4.将监听器类的对象,绑定在按钮对象上
public class Activity03 extends Activity {/** Called when the activity is first created. */private EditText factorOne ;private EditText factorTwo;private TextView symbol;private Button calculate;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);//根据控件的ID来取得代表控件的对象factorOne = (EditText)findViewById(R.id.factorOne);factorTwo = (EditText)findViewById(R.id.factorTwo);symbol = (TextView)findViewById(R.id.symbol);calculate = (Button)findViewById(R.id.calculate);//为symbol和calculate设置显示的值
//        symbol.setText("乘以");
//        calculate.setText("计算");symbol.setText(R.string.symbol);//这里通过引用的方式,去String文件中引用。保证了业务逻辑、视图、引用资源分开calculate.setText(R.string.calculate);//将监听器的对象绑定到按钮对象上面calculate.setOnClickListener(new CalculateListener());}//当客户点击MENU按钮的时候,调用该方法@Overridepublic boolean onCreateOptionsMenu(Menu menu) {menu.add(0, 1, 1, R.string.exit);menu.add(0,2,2,R.string.about);return super.onCreateOptionsMenu(menu);}//当客户点击菜单当中的某一个选项时,会调用该方法@Overridepublic boolean onOptionsItemSelected(MenuItem item) {if(item.getItemId() == 1){finish();}return super.onOptionsItemSelected(item);}class CalculateListener implements OnClickListener{@Overridepublic void onClick(View v) {//取得两个EditText控件的值String factorOneStr = factorOne.getText().toString();String factorTwoStr = factorTwo.getText().toString();//将这两个值存放到Intent对象当中Intent intent = new Intent();intent.putExtra("one",factorOneStr);intent.putExtra("two",factorTwoStr);intent.setClass(Activity03.this, ResultActivity.class);//使用这个Intent对象来启动ResultActivityActivity03.this.startActivity(intent);}}
}

resultActivity:

package mars.activity03;import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;
//1.接受从Activity03当中所传递的值
//2.计算两个值的积
//3.将计算的结果显示在Activity上
public class ResultActivity extends Activity{private TextView resultView;@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.result);resultView = (TextView)findViewById(R.id.result);//得到Intent对象当中的值 Intent intent = getIntent();String factorOneStr = intent.getStringExtra("one");String factorTwoStr = intent.getStringExtra("two");int factorOneInt = Integer.parseInt(factorOneStr);int factorTwoInt = Integer.parseInt(factorTwoStr);//计算两个值的积int result = factorOneInt * factorTwoInt;resultView.setText(result + "");}}

String.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources><string name="hello">Hello World, Activity03!</string><string name="app_name">activity03</string><string name="resultLabel">result</string><string name="symbol">乘以</string><string name="calculate">计算</string><string name="exit">退出</string><string name="about">关于</string>
</resources>

最后再看一下配置文件:活动都要进行注册,并且设置Activity03为主活动

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"package="mars.activity03"android:versionCode="1"android:versionName="1.0"><application android:icon="@drawable/icon" android:label="@string/app_name"><activity android:name=".Activity03"android:label="@string/app_name"><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity><activity android:name=".ResultActivity" android:label="@string/resultLabel"/><!--这里使ResultActivity标题栏显示result--></application><uses-sdk android:minSdkVersion="4" /></manifest> 

运行结果:

转载于:https://www.cnblogs.com/wanghang/p/6299687.html

Android初级教程Activity小案例(计算器乘法运算)相关推荐

  1. Android初级教程调用手机拍照与摄像功能

    这个小案例建议在手机上运行. package com.example.camera;import java.io.File;import android.net.Uri; import android ...

  2. Android初级教程三个Dialog对话框小案例

    这里把三个对话框形式写在一个项目程序里面,用三个按钮控制显示什么样式的对话框. 先看布局文件代码: <LinearLayout xmlns:android="http://schema ...

  3. Android 小案例 -- 计算器

    摘要: 计算器的界面分为两大部分,第一部分是上方的计算表达式,既包括用户的按键输入,也包括计算结果数字;第二部分是下方的各个按键,例如:从0到9的数字按钮.加减乘除与等号.正负号按钮.小数点按钮.求倒 ...

  4. Android初级教程人品计算器

    先看布局: main_activity.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/andr ...

  5. Android初级教程:RatingBar的使用

    记得淘宝里面买家给卖家评分的时候会有一个星星状的评分条,其实就是基于RatingBar做了自定义使用了.那么本篇文章就对RatingBar的使用做一个基本的认识. 接下来就是正题,那就是对于Ratin ...

  6. Android初级教程获取手机系统联系人信息

    在手机内部,对联系人信息存在对应的数据库.我们创建的而联系人信息都存在这张表中.如下是对数据库的截图,我已经对表和应该注意的地方做了红笔标注: 好了,现在可以根据数据库里面的数据来写代码了. 代码如下 ...

  7. Android初级教程:Android中解析方式之pull解析

    在安卓中有很多种解析方式.按照大方向有xml解析和json解析.而,细致的分,xml和json解析各有自己的很多解析方式.今天这一篇主要介绍xml解析中的pull解析.对于xml的解析方式,我之前在j ...

  8. Android初级教程实现电话录音

    需求:设置来电后自动录音. 首先设置一个按钮,代码很简单这里就不再给出. 建一个类,RecorderServicer extends Service package com.ydl.recorder; ...

  9. Android初级教程IP拨号器初识广播接受者

    需求:输入ip号码并且保存在本地,监听打电话广播,如果电话号码以0开头,则加上ip区号拨打. 首先定义一个页面布局: <LinearLayout xmlns:android="http ...

最新文章

  1. 【网络】通讯名词解释:带宽、速率、波特率、奈奎斯特定律、香农定理
  2. Oracle优化器:星型转换
  3. 碾压Bert?“屠榜”的XLnet对NLP任务意味着什么
  4. 张勇:做一个透明经济体的CEO
  5. 扫掠两条引导线_《神都夜行录》周年庆点燃线上线下,解读国风二次元IP的成长之路...
  6. shell题库选择题_shell学习:几道常见shell习题
  7. java 返回页面_spring-mvc返回视图jsp页面及重定向
  8. android开发监听媒体播放器,Android开发之媒体播放工具类完整示例
  9. 小程序入门学习02--导航栏及基础页面布局
  10. [转载] python 函数参数类型检查
  11. (九)OpenCV Canny边缘检测
  12. LoadRunner 12 和 UFT\QTP 12在HP官网已经可以开始下载了
  13. [转载]刘继东:个人知识管理-走出去,请进来
  14. 计算机boot进入u盘启动,用U盘重装系统怎么把Boot设置为启动项?
  15. TikTok二面:“聊聊二维码扫码登录的原理”
  16. Swift5实现ios后台播放语音,腾讯音视频通话后台播放来电铃声
  17. 对 Groovy 进行单元测试
  18. 500万存款,45岁可以退休不干了吗?
  19. 电话号码自动分隔 html,手机版网站中电话、手机号码添加链接
  20. 【阿里云】Apsara Clouder云计算专项技能认证-云服务器ECS入门,考试真题分享

热门文章

  1. 调度算法为何被阿里如此重视?
  2. 内温的整体优先效应实验_陕西师范大学《普通心理学》第四章-知觉
  3. 揭秘重度MMORPG手游后台性能优化方案
  4. 《孤岛惊魂5》游戏中的地形渲染技术-网格生成
  5. Oracle 标准大页和透明大页
  6. SQL基础【十六、Union】
  7. nodejs 单元测试
  8. 【转】Asp.NetMve移除HTTP Header中服務器信息Server、X-AspNet-Version、X-AspNetMvc-Version、X-Powered-By:ASP.NET...
  9. Java队列与栈转换中String.Valueof()使用
  10. 3 - SQL Server 2008 之 使用SQL语句删除约束条件