读书人

太弱了,写个calculator写了二天.

发布时间: 2012-10-05 15:34:33 作者: rapoo

太弱了,写个calculator写了2天...
还是在结石和潘老师的指点下完成的,java,哎,痛啊..完全忘光鸟..

不过一到公司零零散散的事 是多啊


package com.pako;import android.app.Activity;import android.os.Bundle;import android.util.Log;import android.view.View;import android.view.View.OnClickListener;import android.view.View.OnFocusChangeListener;import android.widget.EditText;import android.widget.ImageButton;import android.widget.TextView;import android.widget.Button;public class calzpc extends Activity implements OnClickListener {    private TextView operator; private Button num1; private Button num2; private Button num3; private Button num4; private Button num5; private Button num6; private Button num7; private Button num8; private Button num9; private Button num10; private Button add; private Button cancel; private Button decrease; private Button multiply; private Button devide; private Button equal_key; private EditText result; private EditText input1; private EditText input2; private int input1value = 0; private int input2value = 0; private String opstr =""; private float opresult =0; private EditText input=input1;    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);//        mImageButton1 =(ImageButton) findViewById(R.id.myImageButton1);//        mButton1=(Button)findViewById(R.id.myButton1);//        mTextView1 = (TextView) findViewById(R.id.myTextView1);        num1 = (Button)findViewById(R.id.num1);        num2 = (Button)findViewById(R.id.num2);        num3 = (Button)findViewById(R.id.num3);        num4 = (Button)findViewById(R.id.num4);        num5 = (Button)findViewById(R.id.num5);        num6 = (Button)findViewById(R.id.num6);        num7 = (Button)findViewById(R.id.num7);        num8 = (Button)findViewById(R.id.num8);        num9 = (Button)findViewById(R.id.num9);        add = (Button)findViewById(R.id.add);        decrease = (Button)findViewById(R.id.decrease);        multiply = (Button)findViewById(R.id.multiply);        devide = (Button)findViewById(R.id.devide);        cancel = (Button)findViewById(R.id.cancel);        equal_key = (Button)findViewById(R.id.equal_key);        operator = (TextView)findViewById(R.id.operator);        input1 = (EditText)findViewById(R.id.input1);        input2 = (EditText)findViewById(R.id.input2);        result = (EditText)findViewById(R.id.result);        num1.setOnClickListener(this);        num2.setOnClickListener(this);        num3.setOnClickListener(this);        num4.setOnClickListener(this);        num5.setOnClickListener(this);        num6.setOnClickListener(this);        num7.setOnClickListener(this);        num8.setOnClickListener(this);        num9.setOnClickListener(this);        add.setOnClickListener(this);        decrease.setOnClickListener(this);        multiply.setOnClickListener(this);        devide.setOnClickListener(this);        cancel.setOnClickListener(this);        equal_key.setOnClickListener(this);        input1.setOnClickListener(this);        input2.setOnClickListener(this);           } public void onClick(View v) {  int inputid = v.getId();  if (inputid == R.id.input1)  {   input = input1;  }  else if (inputid == R.id.input2)  {   input = input2;  }  else  {   CharSequence label = ((Button) v).getText();   Log.i("isnumberkey",String.valueOf(Character.isDigit(label.charAt(0))) );   Log.i("is_cancel=",String.valueOf(String.valueOf(label).charAt(0)=='c') );   if (String.valueOf(label).charAt(0)=='=')   {    Log.i("down the equal_key","1");    opresult = operator(opstr.charAt(0));    result.setText(String.valueOf(opresult));   }   else   {    if (String.valueOf(label).charAt(0)=='c')     {     operator.setText("");     input1.setText("");     input2.setText("");     }    else{     if (Character.isDigit(label.charAt(0)))     {      Log.i("enter into number key","enter into number key");      numkey(Integer.valueOf(((Button)v).getText().toString()));           }     else      {      Log.i("enter into operator key","enter into operator key");      operator.setText(label);      opstr = String.valueOf(label);      }     }   }  } } public void numkey(int keynum) {   String snum = String.valueOf(keynum); String prestr = String.valueOf(input.getText()); String inputstr = prestr+snum; Log.i("inputstr",inputstr); input.setText(inputstr);//  if (String.valueOf(input1.getText()).length()<1)//  {input1.setText(snum);//   input1value = keynum;//  Log.i("input1_text=",String.valueOf(input2.getText()));}// else//  {input2.setText(snum);//   input2value = keynum;//  Log.i("input2_text",String.valueOf(input2.getText()));} } public float operator(char opchar) {   float int1 = Float.valueOf(String.valueOf(input1.getText()));  float int2 = Float.valueOf(String.valueOf(input2.getText()));  float result = 0;  switch (opchar)  {  case '+':   result = int1+int2;   break;  case '-':   result = int1-int2;   break;  case '*':   result = int1*int2;   break;  case '/':     if (int2 ==0)   {    result =0;    break;   }   else   {    result = int1/int2;    break;   }  default:result=0;    break;  }  Log.i("result=",String.valueOf(result));  return result; }}

读书人网 >移动开发

热点推荐