Easy and Excellent Source Code of Calculator App
Easy and Excellent Source Code of Calculator App is written below,
Calculator.java:
package com.example.calculator;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
double in1 = 0, i2 = 0;
TextView edittext1;
boolean Add, Sub, Multiply, Divide, Remainder, deci;
Button button_0, button_1, button_2, button_3, button_4, button_5, button_6, button_7, button_8, button_9, button_Add, button_Sub,
button_Mul, button_Div, button_Equ, button_Del, button_Dot, button_Remainder;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button_0 = (Button) findViewById(R.id.b0);
button_1 = (Button) findViewById(R.id.b1);
button_2 = (Button) findViewById(R.id.b2);
button_3 = (Button) findViewById(R.id.b3);
button_4 = (Button) findViewById(R.id.b4);
button_5 = (Button) findViewById(R.id.b5);
button_6 = (Button) findViewById(R.id.b6);
button_7 = (Button) findViewById(R.id.b7);
button_8 = (Button) findViewById(R.id.b8);
button_9 = (Button) findViewById(R.id.b9);
button_Dot = (Button) findViewById(R.id.bDot);
button_Add = (Button) findViewById(R.id.badd);
button_Sub = (Button) findViewById(R.id.bsub);
button_Mul = (Button) findViewById(R.id.bmul);
button_Div = (Button) findViewById(R.id.biv);
button_Remainder = (Button) findViewById(R.id.BRemain);
button_Del = (Button) findViewById(R.id.buttonDel);
button_Equ = (Button) findViewById(R.id.buttoneql);
edittext1 = (TextView) findViewById(R.id.display);
button_1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
edittext1.setText(edittext1.getText() + “1”);
}
});
button_2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
edittext1.setText(edittext1.getText() + “2”);
}
});
button_3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
edittext1.setText(edittext1.getText() + “3”);
}
});
button_4.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
edittext1.setText(edittext1.getText() + “4”);
}
});
button_5.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
edittext1.setText(edittext1.getText() + “5”);
}
});
button_6.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
edittext1.setText(edittext1.getText() + “6”);
}
});
button_7.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
edittext1.setText(edittext1.getText() + “7”);
}
});
button_8.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
edittext1.setText(edittext1.getText() + “8”);
}
});
button_9.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
edittext1.setText(edittext1.getText() + “9”);
}
});
button_0.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
edittext1.setText(edittext1.getText() + “0”);
}
});
button_Add.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (edittext1.getText().length() != 0) {
in1 = Float.parseFloat(edittext1.getText() + “”);
Add = true;
deci = false;
edittext1.setText(null);
}
}
});
button_Sub.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (edittext1.getText().length() != 0) {
in1 = Float.parseFloat(edittext1.getText() + “”);
Sub = true;
deci = false;
edittext1.setText(null);
}
}
});
button_Mul.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (edittext1.getText().length() != 0) {
in1 = Float.parseFloat(edittext1.getText() + “”);
Multiply = true;
deci = false;
edittext1.setText(null);
}
}
});
button_Div.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (edittext1.getText().length() != 0) {
in1 = Float.parseFloat(edittext1.getText() + “”);
Divide = true;
deci = false;
edittext1.setText(null);
}
}
});
button_Remainder.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (edittext1.getText().length() != 0) {
in1 = Float.parseFloat(edittext1.getText() + “”);
Remainder = true;
deci = false;
edittext1.setText(null);
}
}
});
button_Equ.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (Add || Sub || Multiply || Divide || Remainder) {
i2 = Float.parseFloat(edittext1.getText() + “”);
}
if (Add) {
edittext1.setText(in1 + i2 + “”);
Add = false;
}
if (Sub) {
edittext1.setText(in1 – i2 + “”);
Sub = false;
}
if (Multiply) {
edittext1.setText(in1 * i2 + “”);
Multiply = false;
}
if (Divide) {
edittext1.setText(in1 / i2 + “”);
Divide = false;
}
if (Remainder) {
edittext1.setText(in1 % i2 + “”);
Remainder = false;
}
}
});
button_Del.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
edittext1.setText(“”);
in1 = 0.0;
i2 = 0.0;
}
});
button_Dot.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (deci) {
//do nothing or you can show the error
} else {
edittext1.setText(edittext1.getText() + “.”);
deci = true;
}
}
});
}
}
calculator.xml:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#ecf0f1" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="0.3" android:orientation="horizontal"> <TextView android:id="@+id/display" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#ecf0f1" android:textSize="30sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="0.2" android:orientation="horizontal"> <Button android:id="@+id/buttonDel" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_margin="1dp" android:layout_weight="0.25" android:background="#ED6996" android:text="Del" android:textColor="#ecf0f1" android:textSize="20sp" /> <Button android:id="@+id/buttoneql" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_margin="1dp" android:layout_weight="0.25" android:background="#ED6996" android:text="Answer" android:textColor="#ecf0f1" android:textSize="30sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="0.2" android:orientation="horizontal"> <Button android:id="@+id/b1" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_margin="1dp" android:layout_weight="0.25" android:background="#ED6996" android:text="1" android:textColor="#ecf0f1" android:textSize="20sp" /> <Button android:id="@+id/b2" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_margin="1dp" android:layout_weight="0.25" android:background="#ED6996" android:text="2" android:textColor="#ecf0f1" android:textSize="20sp" /> <Button android:id="@+id/b3" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_margin="1dp" android:layout_weight="0.25" android:background="#ED6996" android:text="3" android:textColor="#ecf0f1" android:textSize="20sp" /> <Button android:id="@+id/biv" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_margin="1dp" android:layout_weight="0.25" android:background="#ED6996" android:text="/" android:textColor="#ecf0f1" android:textSize="30sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="0.2" android:orientation="horizontal"> <Button android:id="@+id/b4" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_margin="1dp" android:layout_weight="0.25" android:background="#ED6996" android:text="4" android:textColor="#ecf0f1" android:textSize="20sp" /> <Button android:id="@+id/b5" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_margin="1dp" android:layout_weight="0.25" android:background="#ED6996" android:text="5" android:textColor="#ecf0f1" android:textSize="20sp" /> <Button android:id="@+id/b6" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_margin="1dp" android:layout_weight="0.25" android:background="#ED6996" android:text="6" android:textColor="#ecf0f1" android:textSize="20sp" /> <Button android:id="@+id/bsub" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_margin="1dp" android:layout_weight="0.25" android:background="#ED6996" android:text="-" android:textColor="#ecf0f1" android:textSize="30sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="0.2" android:orientation="horizontal"> <Button android:id="@+id/b7" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_margin="1dp" android:layout_weight="0.25" android:background="#ED6996" android:text="7" android:textColor="#ecf0f1" android:textSize="20sp" /> <Button android:id="@+id/b8" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_margin="1dp" android:layout_weight="0.25" android:background="#ED6996" android:text="8" android:textColor="#ecf0f1" android:textSize="20sp" /> <Button android:id="@+id/b9" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_margin="1dp" android:layout_weight="0.25" android:background="#ED6996" android:text="9" android:textColor="#ecf0f1" android:textSize="20sp" /> <Button android:id="@+id/bmul" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_margin="1dp" android:layout_weight="0.25" android:background="#ED6996" android:text="x" android:textColor="#ecf0f1" android:textSize="30sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="0.2" android:orientation="horizontal"> <Button android:id="@+id/bDot" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_margin="1dp" android:layout_weight="0.25" android:background="#ED6996" android:text="." android:textColor="#ecf0f1" android:textSize="20sp" /> <Button android:id="@+id/b0" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_margin="1dp" android:layout_weight="0.25" android:background="#ED6996" android:text="0" android:textColor="#ecf0f1" android:textSize="20sp" /> <Button android:id="@+id/BRemain" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_margin="1dp" android:layout_weight="0.25" android:background="#ED6996" android:text="%" android:textColor="#ecf0f1" android:textSize="30sp" /> <Button android:id="@+id/badd" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_margin="1dp" android:layout_weight="0.25" android:background="#ED6996" android:onClick="onClick" android:text="+" android:textColor="#ecf0f1" android:textSize="30sp" /> </LinearLayout> </LinearLayout>
Output:
I Think You Understand above Topic “Easy and Excellent Source Code of Calculator App”.
For any query or suggestions feel free to fill comment section and send it
Recent Comments