code of calculator
code of calculator
package calculator_task;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import com.google.android.material.button.MaterialButton;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Scriptable;
TextView first, Second; // Text views to display the output and input expressions
MaterialButton buttonC, buttonBrackOpen, buttonBrackClose;
MaterialButton buttonDivide, buttonMultiply, buttonPlus, buttonMinus,
buttonEquals;
MaterialButton button0, button1, button2, button3, button4, button5, button6,
button7, button8, button9;
MaterialButton buttonAC, buttonDot;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
@Override
public void onClick(View view) {
MaterialButton button = (MaterialButton) view;
String buttonText = button.getText().toString();
String calculate = Second.getText().toString();
if (buttonText.equals("AC")) {
// Clear input and output fields
Second.setText("");
first.setText("0");
return;
}
if (buttonText.equals("=")) {
// Copy the current value in the output field to the input field
Second.setText(first.getText());
return;
}
if (buttonText.equals("C")) {
// Remove the last character from the input field (like a backspace)
calculate = calculate.substring(0, calculate.length() - 1);
} else {
// Append the clicked button's text to the input field
calculate = calculate + buttonText;
}
Second.setText(calculate);
if (!finalResult.equals("Err")) {
// Remove decimal point and trailing zeros if the result is an integer
if (finalResult.endsWith(".0")) {
finalResult = finalResult.replace(".0", "");
}
first.setText(finalResult);
}
}
<TextView
android:id="@+id/Output"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@id/Output2"
android:layout_marginStart="16dp"
android:layout_marginTop="16dp"
android:layout_marginEnd="16dp"
android:layout_marginBottom="1dp"
android:textAlignment="textEnd"
android:textColor="@color/black"
android:textSize="45dp" />
<TextView
android:id="@+id/Output2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@id/buttons_layout"
android:layout_marginStart="16dp"
android:layout_marginTop="16dp"
android:layout_marginEnd="16dp"
android:layout_marginBottom="16dp"
android:text="0"
android:textAlignment="textEnd"
android:textColor="@color/black"
android:textSize="64dp" />
<LinearLayout
android:id="@+id/buttons_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:background="#303F9F"
android:orientation="vertical"
android:paddingVertical="16dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal">
<com.google.android.material.button.MaterialButton
android:id="@+id/Bac"
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_margin="12dp"
android:backgroundTint="#00796B"
android:text="AC"
android:textColor="@color/white"
android:textSize="20dp"
app:cornerRadius="10dp" />
<com.google.android.material.button.MaterialButton
android:id="@+id/Bopen_bracket"
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_margin="12dp"
android:backgroundTint="#F57C00"
android:text="("
android:textColor="@color/white"
android:textSize="32dp"
app:cornerRadius="10dp" />
<com.google.android.material.button.MaterialButton
android:id="@+id/Bclose_bracket"
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_margin="12dp"
android:backgroundTint="#F57C00"
android:text=")"
android:textColor="@color/white"
android:textSize="32dp"
app:cornerRadius="10dp" />
<com.google.android.material.button.MaterialButton
android:id="@+id/Bdivide"
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_margin="12dp"
android:backgroundTint="#E30F0F"
android:text="/"
android:textColor="@color/white"
android:textSize="32dp"
app:cornerRadius="10dp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal">
<com.google.android.material.button.MaterialButton
android:id="@+id/B7"
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_margin="12dp"
android:text="7"
android:textColor="@color/white"
android:textSize="32dp"
app:cornerRadius="10dp" />
<com.google.android.material.button.MaterialButton
android:id="@+id/B8"
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_margin="12dp"
android:text="8"
android:textColor="@color/white"
android:textSize="32dp"
app:cornerRadius="10dp" />
<com.google.android.material.button.MaterialButton
android:id="@+id/B9"
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_margin="12dp"
android:text="9"
android:textColor="@color/white"
android:textSize="32dp"
app:cornerRadius="10dp" />
<com.google.android.material.button.MaterialButton
android:id="@+id/Bmultiply"
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_margin="12dp"
android:backgroundTint="#E30F0F"
android:text="*"
android:textColor="@color/white"
android:textSize="32dp"
app:cornerRadius="10dp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal">
<com.google.android.material.button.MaterialButton
android:id="@+id/B4"
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_margin="12dp"
android:text="4"
android:textColor="@color/white"
android:textSize="32dp"
app:cornerRadius="10dp" />
<com.google.android.material.button.MaterialButton
android:id="@+id/B5"
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_margin="12dp"
android:text="5"
android:textColor="@color/white"
android:textSize="32dp"
app:cornerRadius="10dp" />
<com.google.android.material.button.MaterialButton
android:id="@+id/B6"
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_margin="12dp"
android:text="6"
android:textColor="@color/white"
android:textSize="32dp"
app:cornerRadius="10dp" />
<com.google.android.material.button.MaterialButton
android:id="@+id/Bplus"
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_margin="12dp"
android:backgroundTint="#E30F0F"
android:text="+"
android:textColor="@color/white"
android:textSize="32dp"
app:cornerRadius="10dp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal">
<com.google.android.material.button.MaterialButton
android:id="@+id/B1"
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_margin="12dp"
android:text="1"
android:textColor="@color/white"
android:textSize="32dp"
app:cornerRadius="10dp" />
<com.google.android.material.button.MaterialButton
android:id="@+id/B2"
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_margin="12dp"
android:text="2"
android:textColor="@color/white"
android:textSize="32dp"
app:cornerRadius="10dp" />
<com.google.android.material.button.MaterialButton
android:id="@+id/B3"
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_margin="12dp"
android:text="3"
android:textColor="@color/white"
android:textSize="32dp"
app:cornerRadius="10dp" />
<com.google.android.material.button.MaterialButton
android:id="@+id/Bminus"
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_margin="12dp"
android:backgroundTint="#E30F0F"
android:text="-"
android:textColor="@color/white"
android:textSize="32dp"
app:cornerRadius="10dp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal">
<com.google.android.material.button.MaterialButton
android:id="@+id/B0"
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_margin="12dp"
android:text="0"
android:textColor="@color/white"
android:textSize="32dp"
app:cornerRadius="10dp" />
<com.google.android.material.button.MaterialButton
android:id="@+id/Bdot"
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_margin="12dp"
android:text="."
android:textColor="@color/white"
android:textSize="32dp"
app:cornerRadius="10dp" />
<com.google.android.material.button.MaterialButton
android:id="@+id/Bequals"
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
android:layout_width="161dp"
android:layout_height="72dp"
android:layout_margin="12dp"
android:backgroundTint="#E32E58"
android:text="="
android:textColor="@color/white"
android:textSize="32dp"
app:cornerRadius="10dp" />
</LinearLayout>
</LinearLayout>
</RelativeLayout>
Screenshot