Код: Выделить всё
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.TextView;
public class MainActivity extends Activity {
double prev;
TextView tv;
boolean isEmpty;
final int ADD = 1, REMOVE = 2, MULTI = 3, DIVIDE = 4, EQUALS = 5;
int LAST_ACTION = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
prev = 0;
tv = (TextView) findViewById(R.id.TextView1);
isEmpty = true;
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
finish();
return super.onOptionsItemSelected(item);
}
public void onclick(View v) {
switch (v.getId()) {
case R.id.ButtonClear:
tv.setText("0.0");
break;
case R.id.Button01:
if (isEmpty) {
tv.setText("1");
isEmpty = false;
} else
tv.setText(tv.getText().toString() + 1);
break;
case R.id.Button02:
if (isEmpty) {
tv.setText("2");
isEmpty = false;
} else
tv.setText(tv.getText().toString() + 2);
break;
case R.id.Button03:
if (isEmpty) {
tv.setText("3");
isEmpty = false;
} else
tv.setText(tv.getText().toString() + 3);
break;
case R.id.Button04:
if (isEmpty) {
tv.setText("4");
isEmpty = false;
} else
tv.setText(tv.getText().toString() + 4);
break;
case R.id.Button05:
if (isEmpty) {
tv.setText("5");
isEmpty = false;
} else
tv.setText(tv.getText().toString() + 5);
break;
case R.id.Button06:
if (isEmpty) {
tv.setText("6");
isEmpty = false;
} else
tv.setText(tv.getText().toString() + 6);
break;
case R.id.Button07:
if (isEmpty) {
tv.setText("7");
isEmpty = false;
} else
tv.setText(tv.getText().toString() + 7);
break;
case R.id.Button08:
if (isEmpty) {
tv.setText("8");
isEmpty = false;
} else
tv.setText(tv.getText().toString() + 8);
break;
case R.id.Button09:
if (isEmpty) {
tv.setText("9");
isEmpty = false;
} else
tv.setText(tv.getText().toString() + 9);
break;
case R.id.buttonDot:
if (isEmpty) {
tv.setText("0.");
isEmpty = false;
} else
tv.setText(tv.getText().toString() + ".");
break;
case R.id.button0:
if (isEmpty) {
} else
tv.setText(tv.getText().toString() + 0);
break;
case R.id.imageButtonDelete:
if (isEmpty)
;
else if (tv.getText().toString().length() == 1) {
tv.setText("0.0");
isEmpty = true;
} else
tv.setText(tv.getText().toString()
.substring(0, tv.getText().toString().length() - 1));
break;
case R.id.ButtonSqrt:
double sqrt = Math
.sqrt(Double.parseDouble(tv.getText().toString()));
tv.setText(String.valueOf(sqrt));
break;
case R.id.imageButtonAdd:
// Недоделанный код
prev = Double.parseDouble(tv.getText().toString());
LAST_ACTION = ADD;
tv.setText("0.0");
isEmpty = true;
break;
case R.id.imageButtonRemov:
LAST_ACTION = REMOVE;
prev = Double.parseDouble(tv.getText().toString());
tv.setText("0.0");
isEmpty = true;
break;
case R.id.imageButtonMultiplication:
LAST_ACTION = MULTI;
prev = Double.parseDouble(tv.getText().toString());
tv.setText("0.0");
isEmpty = true;
break;
case R.id.buttonDivide:
LAST_ACTION = DIVIDE;
prev = Double.parseDouble(tv.getText().toString());
tv.setText("0.0");
isEmpty = true;
break;
case R.id.imageButtonEquals:
calc();
break;
case R.id.buttonAbs:
tv.setText(String.valueOf(Double.parseDouble(tv.getText()
.toString()) * -1));
break;
}
}
public void calc() {
switch (LAST_ACTION) {
case ADD:
tv.setText(String.valueOf(prev
+ Double.parseDouble(tv.getText().toString())));
break;
case REMOVE:
tv.setText(String.valueOf(prev
- Double.parseDouble(tv.getText().toString())));
break;
case MULTI:
tv.setText(String.valueOf(prev
* Double.parseDouble(tv.getText().toString())));
break;
case DIVIDE:
tv.setText(String.valueOf(prev
/ Double.parseDouble(tv.getText().toString())));
break;
}
}
}