2: { if(firstFlag) { result=result*10+2; firstFlag=false; } else numtemp=numtemp*10+2; break; } case R.id.num3: { if(firstFlag) { result=result*10+3; firstFlag=false; } else numtemp=numtemp*10+3; break; } case R.id.num4: { if(firstFlag) { result=result*10+4; firstFlag=false; } else numtemp=numtemp*10+4; break; } case R.id.num5: { if(firstFlag) { result=result*10+5; firstFlag=false; } else numtemp=numtemp*10+5; break; } case R.id.num6: { if(firstFlag) { result=result*10+6; firstFlag=false; } else { numtemp=numtemp*10+6; calculate(numtemp); } break; } case R.id.num7: { if(firstFlag) { result=result*10+7; firstFlag=false; } else { numtemp=numtemp*10+7; calculate(numtemp); } break; } case R.id.num8: { if(firstFlag) { result=result*10+8; { result=result*10+8; firstFlag=false; } } else { numtemp=numtemp*10+8; calculate(numtemp); } break; } case R.id.num9: { if(firstFlag) { result=result*10+9; firstFlag=false; } else { numtemp=numtemp*10+9; calculate(numtemp); } break; } } } } private class CommandAction implements Button.OnClickListener { @Override public void onClick(View v) { Button btn=(Button)v; String inputCommand=(String)btn.getText(); switch(btn.getId()) { case R.id.add: { lastCommand="+"; break; } case R.id.sub: { lastCommand="-"; break; } case R.id.ride: { lastCommand="*"; break; } case R.id.divide: { lastCommand="/"; break; } case R.id.equal: { lastCommand="="; input.setText(""); rl.setText(String.valueOf(result)); return ; } } input.setText(input.getText()+inputCommand); } } private void calculate(double x) { if(lastCommand.equals("+")) { result += x; } if(lastCommand.equals("-")) { result -= x; } |