计算器和Menu

时间:2022-10-25 00:21:12

MainActivity.java

 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; public class MainActivity extends Activity {
private EditText EditTextOne;
private EditText EditTextTwo;
private Button myButton; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
EditTextOne = (EditText) findViewById(R.id.EditTextOne);
EditTextTwo = (EditText) findViewById(R.id.EditTextTwo);
myButton = (Button) findViewById(R.id.myButton);
myButton.setOnClickListener(new myButtonListener());
} class myButtonListener implements OnClickListener{
public void onClick(View v) {
Intent intent = new Intent();
String first = EditTextOne.getText().toString();
String second = EditTextTwo.getText().toString(); intent.putExtra("one",first );
intent.putExtra("two", second); intent.setClass(MainActivity.this, ResultActivity.class);
startActivity(intent);
} }
//当客户点击MENU按钮的时候,调用该方法
public boolean onCreateOptionsMenu(Menu menu) {
//一个add对应就产生一个选项
menu.add(0, 1, 1, R.string.exit);
menu.add(0, 2, 2, R.string.about);
return super.onCreateOptionsMenu(menu);
}
//当客户点击菜单当中的某一个选项时,会调用该方法
public boolean onOptionsItemSelected(MenuItem item) {
if(item.getItemId() == 1){
finish();
}
return super.onOptionsItemSelected(item);
} }

main.xml

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" > <EditText
android:id="@+id/EditTextOne"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>" <TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/result"
/> <EditText
android:id="@+id/EditTextTwo"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/> <Button
android:id="@+id/myButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/calculate"
/>
</LinearLayout>

ResultActivity.java

 import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView; public class ResultActivity extends Activity{
private TextView myTextView;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.result);
//获取Intent对象
Intent intent = getIntent();
//得到Intent对象当中的值
String factorOneStr = intent.getStringExtra("one");
String factorTwoStr = intent.getStringExtra("two");
//将接收到的字符串转换成整数
int factorOneInt = Integer.parseInt(factorOneStr);
int factorOneTwo = Integer.parseInt(factorTwoStr);
//计算两个数的值
int result = factorOneInt*factorOneTwo; myTextView = (TextView) findViewById(R.id.myTextView);
myTextView.setText(result); } }

result.xml

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

AndroidManifest.xml

 <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mars.widget"
android:versionCode="1"
android:versionName="1.0" > <uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="18" /> <application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.mars.widget.MainActivity"
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="com.mars.widget.ResultActivity" android:label="@string/result"/>"
</application> </manifest>

string.xml

<?xml version="1.0" encoding="utf-8"?>
<resources> <string name="app_name">EditText控件和menu控件</string>
<string name="action_settings">Settings</string>
<string name="result">乘以</string>
<string name="calculate">计算</string>
<string name="exit">退出</string>
<string name="about">关于</string> </resources>

计算器和Menu的更多相关文章

  1. AppleScript 快速入门

    AppleScript 快速入门 AppleScript 顾名思义是苹果开发的一套脚本语言,利用 AppleScript 在 macOS 系统上可以对其他程序进行操作,点击按钮.发送消息.模拟自动化执 ...

  2. Win10计算器在哪里?三种可以打开Win10计算器的方法图文介绍

    全新的windows10系统带来了不少新的特性和改变,其中win10的计算器位置就发生了很多的变化,导致很多网友们都以为win10计算器不见了,那么,win10计算器在哪里?如何打开?针对此问题,本文 ...

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

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

  4. Android 简单计算器源码&period;&period;&period;&period;

    PS:今天算是闲着没事做了一个小型的计算器...顺便熟悉一下Android的布局,组件,以及时间监听的方法...就当是做了一个小小的练习吧...     顺便去对比了一下别人写的代码...有的使用到了 ...

  5. andriod 带看括弧的计算器

    界面 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=& ...

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

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

  7. android实现计算器功能

    设计一个简单的计算器. 第一个Activity的界面. 第二个Activity显示算式和计算结果. 第一个Activity代码: import android.app.Activity; import ...

  8. Android之一个简单计算器源代码

    通过Android4.0 网格布局GridLayout来实现一个简单的计算器界面布局   源码如下(欢迎大家指导 批评 ) package com.android.xiong.gridlayoutTe ...

  9. 《汇编语言程序设计》——仿windows计算器

    <汇编语言程序设计> ——计算器程序设计 目录 一.     题目与目标 1.      题目 2.      学习目的 二.     分析与设计 1.      系统分析 2.      ...

随机推荐

  1. 视差效果原理 background-attachment&colon;fixed

    <html> <head> <style type="text/css"> body { background-image:url('http: ...

  2. 算法导论学习---红黑树具体解释之插入&lpar;C语言实现&rpar;

    前面我们学习二叉搜索树的时候发如今一些情况下其高度不是非常均匀,甚至有时候会退化成一条长链,所以我们引用一些"平衡"的二叉搜索树.红黑树就是一种"平衡"的二叉搜 ...

  3. 用js写倒计时&comma;向列表添加数据-------2017-03-21

    一.单选按钮确定提交是否可用 <input id="a" type="radio" name="a"  onclick="c ...

  4. new和newInstance区别

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp55     在初始化一个类,生成一个实例的时候:newInstance() ...

  5. Cocos2d-x3&period;0 触摸事件

    TouchableSpriteTest auto winSize = Director::getInstance()->getWinSize(); Point origin = Director ...

  6. pyautogui 文档(四):消息框功能

    消息框功能 PyAutoGUI利用PyMsgBox中的消息框函数提供跨平台的纯Python方式来显示JavaScript样式的消息框.提供了四个消息框功能: alert()函数 >>&gt ...

  7. insert 插入

    自动关联当前时间: GETDATE():返回当前时间和日期.

  8. Java知多少(50)Java throws子句

    如果一个方法可以导致一个异常但不处理它,它必须指定这种行为以使方法的调用者可以保护它们自己而不发生异常.做到这点你可以在方法声明中包含一个throws子句.一个 throws 子句列举了一个方法可能抛 ...

  9. ununtu 18&period;04 163 mirror

    deb http://mirrors.163.com/ubuntu/ bionic main restricted deb http://mirrors.163.com/ubuntu/ bionic- ...

  10. java代码,输入n多个数,求其平均值,虽有重复,但是第二次,我就乱写了

    总结:对象调用方法,与在main 里直接输出没什么大的区别,少用方法, 乱搞++++ package com.c2; import java.util.Scanner; public class DD ...