做了一个A+B的APP,虽然很简单,但是作为初学者还是弄了几个小时才弄好,什么东西都要看书或者百度,但最后成功了,还是很开心的,收货蛮大的。现在把过程写一下:

首先给出效果图:

一开始布局一直有问题,不知道为什么我定义了两个编辑框跟一个按钮,但画出来的时候全都重叠在左上角了,只能输入到一个编辑框,一直卡在这里,后来找了一个输入用户名密码的布局文件参考了一下,发现把原来生成的前面那些删掉,然后设置为垂直布局就不会重叠在一起了,正常画出来之后,代码部分就简单了,一共有三个变量,我把第三个显示结果的框设置成了只读的属性,设置的方法是:android:editable="false"

activity_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"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="请输入第一个数:"
/>
<EditText
android:id="@+id/num1"
android:textColorHint="#ff2323"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="num"
/>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="请输入第二个数:"
/>
<EditText
android:id="@+id/num2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="num"
/>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="结果:"
/>
<EditText
android:id="@+id/num3"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:editable="false"
android:hint="结果"
/> <Button android:id="@+id/button1"
android:onClick="button_click"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello_world"
/> </LinearLayout>

MainActivity.java如下:

 package com.example.hehe;

 import android.os.Bundle;
import android.app.Activity;
import android.view.Menu; import android.view.View; import android.widget.Button;
import android.widget.EditText; import android.widget.Toast;
import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.provider.CalendarContract.Colors;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnKeyListener;
import android.widget.EditText;
import android.widget.TextView; public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
} @Override
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;
}
public void button_click(View v)
{
// Button button1 = (Button) findViewById(R.id.button1);
Button button1 = (Button)v; EditText num1 = (EditText) findViewById(R.id.num1);
EditText num2 = (EditText) findViewById(R.id.num2);
EditText num3 = (EditText) findViewById(R.id.num3);
int a = Integer.parseInt(num1.getText().toString());
int b = Integer.parseInt(num2.getText().toString());
int c = a + b;
String te = ""+a+"+"+b+"="+c;
num3.setText(te);
num3.setTextColor(Color.GREEN);
}
}

Android开发学习笔记--一个有界面A+B的计算器的更多相关文章

  1. android开发学习笔记000

    使用书籍:<疯狂android讲义>——李刚著,2011年7月出版 虽然现在已2014,可我挑来跳去,还是以这本书开始我的android之旅吧. “疯狂源自梦想,技术成就辉煌.” 让我这个 ...

  2. android开发学习笔记系列(2)-android应用界面编程

    前言 本篇博客将会简要介绍andriod开发过程中的一些界面元素和编程的实现,我将大家走进安卓的XML世界,当然可能会涉及到java代码,当然本文主要是介绍XML文件的界面布局. 那么我们的XML存在 ...

  3. 【转】Android开发学习笔记(一)——初识Android

    对于一名程序员来说,“自顶向下”虽然是一种最普通不过的分析问题和解决问题的方式,但其却是简单且较为有效的一种.所以,将其应用到Android的学习中来,不至于将自己的冲动演变为一种盲目和不知所措. 根 ...

  4. android开发学习笔记系列(1)-android起航

    前言 在学习安卓的过程中,我觉得非常有必要将自己所学的东西进行整理,因为每每当我知道我应该是如何去实现功能的时候,有许多细节问题我总是会遗漏,因此我也萌生了写一系列博客来描述自己学习的路线,让我的an ...

  5. Android开发学习笔记DDMS的使用

    打开DDMS DDMS 的全称是Dalvik Debug Monitor Service,是 Android 开发环境中的Dalvik虚拟机调试监控服务. DDMS里面包含了:Device(设备) F ...

  6. 【转】Android开发学习笔记:5大布局方式详解

    Android中常用的5大布局方式有以下几种: 线性布局(LinearLayout):按照垂直或者水平方向布局的组件. 帧布局(FrameLayout):组件从屏幕左上方布局组件. 表格布局(Tabl ...

  7. 【Android开发学习笔记之一】5大布局方式详解

    Android中常用的5大布局方式有以下几种: 线性布局(LinearLayout):按照垂直或者水平方向布局的组件. 帧布局(FrameLayout):组件从屏幕左上方布局组件. 表格布局(Tabl ...

  8. Android开发学习笔记(二)——编译和运行原理(1)

    http://www.cnblogs.com/Pickuper/archive/2011/06/14/2078969.html 接着上一篇的内容,继续从全局了解Android.在清楚了Android的 ...

  9. Android开发学习笔记--给一个按钮定义事件

    学习Android的第一天,了解了各种布局,然后自己动手画出了一个按钮,然后给按钮定义了一个事件是弹出一条消息显示“我成功了!”字样,具体过程如下: 1.修改布局文件activity_main.xml ...

随机推荐

  1. oracle--知识点汇总1

    同义词: -- e是scott.emp表的临时别名 select e.* from (select * from scott.emp) e; --创建私有同义词 create synonym myem ...

  2. 【原】gulp快速入门

    今天刚入职了一家新公司,结果明天就要开始项目了.上级说要用gulp来打包代码,所以今晚花了一晚来看这个gulp, 可以说已经入门了.所以做一个小小的总结 : 首先全局安装gulp npm instal ...

  3. PHP 数据库抽象层pdo

    PDO是PHP数据对象(PHP Data Object)的缩写. pdo就是一个"数据库访问抽象层",作用是统一各种数据库的访问接口,能够轻松地在不同数据库之间进行切换,使得数据库 ...

  4. javascript之查找数组中最小/最大的数

    实现原理:和数组的顺序查找很类似,都是逐个数据的比对. 废话不多说~ 代码如下: /* * 参数说明: * array:传入数组 ,例如:var arr = [5,7,66,78,99,103,126 ...

  5. QT的安装和配置及helloqt程序的编写时遇到的问题

    1.如果在Windows下命令行编译和运行.cpp 文件,需要找到合适的命令所在文件夹的目录,把它添加到Windows的环境变量里去,SystemPropertiesAdvance. 如qmake 在 ...

  6. JS中两个重要的方法 call & apply 学习

    正题: Function.prototype.apply(instance,args)  //args 数组 Function.prototype.Call(instance,a1,a2)  //a1 ...

  7. Ajax load html page

    jQuery ajax - load() 方法 jQuery Ajax 参考手册 实例 使用 AJAX 请求来改变 div 元素的文本: $("button").click(fun ...

  8. thinkphp系统常量与自定义常量

    ----------------------------------------Action中使用的系统常量 ----------------------------------------THINK ...

  9. Python开发【第十九篇】:Python操作MySQL

    本篇对于Python操作MySQL主要使用两种方式: 原生模块 pymsql ORM框架 SQLAchemy pymsql pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb ...

  10. Java数据结构 遍历 排序 查找 算法实现

    请查看:http://blog.csdn.net/zhanghao_hulk/article/details/35372571#t13