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

还是在结石和潘老师的指点下完成的,java,哎,痛啊..完全忘光鸟..

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

[img]http://dl.iteye.com/upload/attachment/196205/a74b75a6-a8bb-3109-bbac-740c99700b24.jpg[/img]

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;
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值