android caculator

原创 2015年07月10日 11:33:47

还只是个架子,没实现算术计算

mail.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#FFFFFF"
    tools:context=".MainActivity" >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >
        <EditText
            android:id="@+id/txtMsg"
            android:inputType="number"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="">
        </EditText>    
    </LinearLayout>
    
    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >
     	<Button
     		android:id="@+id/btnmc"
     	    android:layout_width="fill_parent"
     	    android:layout_height="wrap_content"
     	    android:text="mc" android:layout_weight="1">
     	</Button>
     	<Button
     		android:id="@+id/btnmp"
     	    android:layout_width="fill_parent"
     	    android:layout_height="wrap_content"
     	    android:text="m+" android:layout_weight="1">
     	</Button>
     	<Button
     		android:id="@+id/btnmm"
     	    android:layout_width="fill_parent"
     	    android:layout_height="wrap_content"
     	    android:text="m-" android:layout_weight="1">
     	</Button>
     	<Button
     		android:id="@+id/btnmr"
     	    android:layout_width="fill_parent"
     	    android:layout_height="wrap_content"
     	    android:text="mr" android:layout_weight="1">
     	</Button>
  </LinearLayout>
    
      <LinearLayout
          android:layout_width="fill_parent"
          android:layout_height="wrap_content"
          android:orientation="horizontal" >
          <Button
     		android:id="@+id/btnClear"
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:layout_weight="1"
              android:text="C" >
          </Button>
          <Button
     		android:id="@+id/btnpOrm"
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:layout_weight="1"
              android:text="+/-" >
          </Button>
          <Button
     		android:id="@+id/btnDevide"
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:layout_weight="1"
              android:text="/" >
          </Button>
          <Button
     		android:id="@+id/btnAnd"
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:layout_weight="1"
              android:text="*" >
          </Button>
      </LinearLayout>
    
      <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >
     	<Button
     		android:id="@+id/btnSeven"
     	    android:layout_width="fill_parent"
     	    android:layout_height="wrap_content"
     	    android:text="7" android:layout_weight="1">
     	</Button>
     	<Button     	
     		android:id="@+id/btnEight"
     	    android:layout_width="fill_parent"
     	    android:layout_height="wrap_content"
     	    android:text="8" android:layout_weight="1">
     	</Button>
     	<Button
     		android:id="@+id/btnNine"
     	    android:layout_width="fill_parent"
     	    android:layout_height="wrap_content"
     	    android:text="9" android:layout_weight="1">
     	</Button>
     	<Button
     		android:id="@+id/btnMinus"
     	    android:layout_width="fill_parent"
     	    android:layout_height="wrap_content"
     	    android:text="-" android:layout_weight="1">
     	</Button>
  </LinearLayout>
  
    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >
        <Button
     		android:id="@+id/btnFour"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="4" >
        </Button>
        <Button
     		android:id="@+id/btnFive"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="5" >
        </Button>
        <Button
     		android:id="@+id/btnSix"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="6" >
        </Button>
        <Button
     		android:id="@+id/btnPlus"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="+" >
        </Button>
    </LinearLayout>
    
     <LinearLayout android:orientation="horizontal"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">

        <LinearLayout android:orientation="vertical"
        	android:layout_weight="3"
        	android:layout_width="wrap_content"
        	android:layout_height="wrap_content">

     		<LinearLayout android:orientation="horizontal"
        		android:layout_width="fill_parent"
        		android:layout_height="wrap_content">
        		<Button
     		android:id="@+id/btnOne"
        		    android:layout_width="wrap_content"
        		    android:layout_height="wrap_content"
        		    android:layout_weight="1"
        		    android:text="1"></Button>
        		<Button
     		android:id="@+id/btnTwo"
        		    android:layout_width="wrap_content"
        		    android:layout_height="wrap_content"
        		    android:layout_weight="1"
        		    android:text="2"></Button>
        		<Button
     		android:id="@+id/btnThree"
        		    android:layout_width="wrap_content"
        		    android:layout_height="wrap_content"
        		    android:layout_weight="1"
        		    android:text="3"></Button>
     		</LinearLayout>
      
     		<LinearLayout android:orientation="horizontal"
        		android:layout_width="fill_parent"
        		android:layout_height="wrap_content">
        		<Button
     		android:id="@+id/btnZero"
        		    android:layout_width="0px"
        		    android:layout_height="wrap_content"
        		    android:layout_weight="2"
        		    android:text="0"></Button>
        		<Button
     		android:id="@+id/btnDot"
        		    android:layout_width="0px"
        		    android:layout_height="wrap_content"
        		    android:layout_weight="1"
        		    android:text="."></Button>
        	</LinearLayout>	
     	</LinearLayout>
    
    <LinearLayout android:orientation="vertical"
        android:layout_weight="1"
        	android:layout_width="wrap_content"
        	android:layout_height="fill_parent">
     		<Button
     		android:id="@+id/btnEqual"
     		    android:layout_width="fill_parent"
     		    android:layout_height="fill_parent"
        android:text="="></Button>
      </LinearLayout>
     </LinearLayout>   

</LinearLayout>



MyActivity.java


package test.my;

import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;

import android.app.Activity;
import android.os.Bundle;
import android.text.InputType;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

public class MyActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        try {
			setClickListener();
		} catch (IllegalArgumentException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IllegalAccessException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
    }
    
    public void setClickListener() throws IllegalArgumentException, IllegalAccessException{
        Field[] fields = R.id.class.getDeclaredFields();
        
		for(Field f: fields){
			View v = findViewById(f.getInt(R.id.class));
			
			if(f.getName().startsWith("btn")){
	        	v.setOnClickListener(new MyButtonClickListener());
	        	
			} else if(f.getName().startsWith("txt")){
				((EditText)v).setInputType(InputType.TYPE_NULL);
				
			}
		}

    }
    
    public class MyButtonClickListener implements OnClickListener{
    	public void onClick(View v){    		
    		Button btn = (Button)v;
    		EditText et = (EditText)findViewById(R.id.txtMsg);

    		et.setText(btn.getText());
    		switch(btn.getId()){
				case R.id.btnClear:
					et.setText("");
					break;
					
				default:
					et.setText(btn.getText());
					break;
    		}
    				
    	}
    }
}



R.java


/* AUTO-GENERATED FILE.  DO NOT MODIFY.
 *
 * This class was automatically generated by the
 * aapt tool from the resource data it found.  It
 * should not be modified by hand.
 */

package test.my;

public final class R {
    public static final class attr {
    }
    public static final class drawable {
        public static final int icon=0x7f020000;
    }
    public static final class id {
        public static final int btnAnd=0x7f050008;
        public static final int btnClear=0x7f050005;
        public static final int btnDevide=0x7f050007;
        public static final int btnDot=0x7f050015;
        public static final int btnEight=0x7f05000a;
        public static final int btnEqual=0x7f050016;
        public static final int btnFive=0x7f05000e;
        public static final int btnFour=0x7f05000d;
        public static final int btnMinus=0x7f05000c;
        public static final int btnNine=0x7f05000b;
        public static final int btnOne=0x7f050011;
        public static final int btnPlus=0x7f050010;
        public static final int btnSeven=0x7f050009;
        public static final int btnSix=0x7f05000f;
        public static final int btnThree=0x7f050013;
        public static final int btnTwo=0x7f050012;
        public static final int btnZero=0x7f050014;
        public static final int btnmc=0x7f050001;
        public static final int btnmm=0x7f050003;
        public static final int btnmp=0x7f050002;
        public static final int btnmr=0x7f050004;
        public static final int btnpOrm=0x7f050006;
        public static final int txtMsg=0x7f050000;
    }
    public static final class layout {
        public static final int main=0x7f030000;
    }
    public static final class string {
        public static final int app_name=0x7f040000;
        public static final int hello=0x7f040001;
    }
}



相关文章推荐

leetcode: basic caculator

Implement a basic calculator to evaluate a simple expression string.The expression string may contai...

caculator控制台程序

  • 2010年04月11日 13:40
  • 1.54MB
  • 下载

caculator24

  • 2014年09月11日 09:26
  • 1.82MB
  • 下载

Android——带你从ADB命令行查看Task任务栈的管理方式

一、概念 1、Task Task是指将相关的Activity组合到一起,以Activity Stack的方式进行管理。从用户体验上讲,一个“应用程序”就是一个Task(默认情况),但是从根本上讲,一个...

Caculator.java

  • 2009年03月25日 10:24
  • 7KB
  • 下载

caculator算术表达式求值

  • 2010年05月05日 16:40
  • 93KB
  • 下载

Android微信登录后黑屏闪屏问题

最近项目要加一个微信登录的功能,由于以前其他项目使用过微信登录,而且该在的东西都在,所以加入微信登录也是三下五除二的很快加入了。但是我发现一个小细节,微信登录时,无论是授权完成还是点击取消登录,回来都...

Java+caculator

  • 2009年09月14日 11:05
  • 3KB
  • 下载

C# caculator

  • 2008年04月13日 07:48
  • 790KB
  • 下载

Eclipse下搭建Android环境的网络配置

由于网络问题,选择了离线安装ADT和SDK,但是在安装后发现仍需要联网进行install sdk build tools,然后就卡在这里了,最后上网搜了一下,可以在更新时进行配置代理。 离线安装ADT...
  • Mr_yyy
  • Mr_yyy
  • 2015年11月30日 16:10
  • 238
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android caculator
举报原因:
原因补充:

(最多只允许输入30个字)