Voraussetzungen:  

Erstellen Sie einen einfachen Taschenrechner, der je nach Benutzereingabe grundlegende arithmetische Operationen wie Addition, Subtraktion, Multiplikation oder Division ausführen kann. Unten finden Sie ein Beispielvideo, um eine Vorstellung davon zu bekommen, was wir in diesem Artikel tun werden. Beachten Sie, dass wir dieses Projekt mit der  Java  -Sprache implementieren werden. 

Schritt für Schritt Umsetzung

Schritt 1: Erstellen Sie ein neues Projekt

Informationen zum Erstellen eines neuen Projekts in Android Studio finden Sie unter So erstellen/starten Sie ein neues Projekt in Android Studio . Beachten Sie, dass Sie Java als Programmiersprache auswählen .

Schritt 2: Arbeiten mit der Datei activity_main.xml

Navigieren Sie zu app > res > layout > activity_main.xml und fügen Sie den folgenden Code zu dieser Datei hinzu. Nachfolgend finden Sie den Code für die Datei  activity_main.xml .

XML

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#8BC34A"
    android:backgroundTint="@android:color/darker_gray"
    tools:context=".MainActivity">
 
    <!-- Text View to display our basic heading of "calculator"-->
    <TextView
        android:layout_width="194dp"
        android:layout_height="43dp"
        android:layout_marginStart="114dp"
        android:layout_marginLeft="114dp"
        android:layout_marginTop="58dp"
        android:layout_marginEnd="103dp"
        android:layout_marginRight="103dp"
        android:layout_marginBottom="502dp"
        android:scrollbarSize="30dp"
        android:text=" Calculator"
        android:textAppearance="@style/TextAppearance.AppCompat.Body1"
        android:textSize="30dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
 
    <!-- Edit Text View to input the values -->
    <EditText
        android:id="@+id/num1"
        android:layout_width="364dp"
        android:layout_height="28dp"
        android:layout_marginStart="72dp"
        android:layout_marginTop="70dp"
        android:layout_marginEnd="71dp"
        android:layout_marginBottom="416dp"
        android:background="@android:color/white"
        android:ems="10"
        android:hint="Number1(0)"
        android:inputType="number"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
 
    <!-- Edit Text View to input 2nd value-->
    <EditText
        android:id="@+id/num2"
        android:layout_width="363dp"
        android:layout_height="30dp"
        android:layout_marginStart="72dp"
        android:layout_marginTop="112dp"
        android:layout_marginEnd="71dp"
        android:layout_marginBottom="374dp"
        android:background="@android:color/white"
        android:ems="10"
        android:hint="number2(0)"
        android:inputType="number"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
 
    <!-- Text View to display result -->
    <TextView
        android:id="@+id/result"
        android:layout_width="356dp"
        android:layout_height="71dp"
        android:layout_marginStart="41dp"
        android:layout_marginTop="151dp"
        android:layout_marginEnd="48dp"
        android:layout_marginBottom="287dp"
        android:background="@android:color/white"
        android:text="result"
        android:textColorLink="#673AB7"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
 
    <!-- A button to perform 'sum' operation -->
    <Button
        android:id="@+id/sum"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="16dp"
        android:layout_marginTop="292dp"
        android:layout_marginEnd="307dp"
        android:layout_marginBottom="263dp"
        android:backgroundTint="@android:color/holo_red_light"
        android:onClick="doSum"
        android:text="+"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
 
    <!-- A button to perform subtraction operation. -->
    <Button
        android:id="@+id/sub"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="210dp"
        android:layout_marginTop="292dp"
        android:layout_marginEnd="113dp"
        android:layout_marginBottom="263dp"
        android:backgroundTint="@android:color/holo_red_light"
        android:onClick="doSub"
        android:text="-"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
 
    <!-- A button to perform division. -->
    <Button
        android:id="@+id/div"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="307dp"
        android:layout_marginTop="292dp"
        android:layout_marginEnd="16dp"
        android:layout_marginBottom="263dp"
        android:backgroundTint="@android:color/holo_red_light"
        android:onClick="doDiv"
        android:text="/"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
 
    <!-- A button to perform multiplication. -->
    <Button
        android:id="@+id/mul"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="16dp"
        android:layout_marginTop="356dp"
        android:layout_marginEnd="307dp"
        android:layout_marginBottom="199dp"
        android:backgroundTint="@android:color/holo_red_light"
        android:onClick="doMul"
        android:text="x"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
 
    <!-- A button to perform a modulus function. -->
    <Button
        android:id="@+id/button"
        android:layout_width="92dp"
        android:layout_height="48dp"
        android:layout_marginStart="113dp"
        android:layout_marginTop="356dp"
        android:layout_marginEnd="206dp"
        android:layout_marginBottom="199dp"
        android:backgroundTint="@android:color/holo_red_light"
        android:onClick="doMod"
        android:text="%(mod)"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
 
    <!-- A button to perform a power function. -->
    <Button
        android:id="@+id/pow"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="113dp"
        android:layout_marginTop="292dp"
        android:layout_marginEnd="210dp"
        android:layout_marginBottom="263dp"
        android:backgroundTint="@android:color/holo_red_light"
        android:onClick="doPow"
        android:text="n1^n2"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
 
</androidx.constraintlayout.widget.ConstraintLayout>

Nach der Verwendung dieses Codes sieht die Benutzeroberfläche wie folgt aus: 

Schritt 3: Arbeiten mit der MainActivity.java-Datei

Öffnen Sie dort die Datei MainActivity.java innerhalb der Klasse, erstellen Sie eine Methode namens doSum(View v). In dieser Methode müssen wir zunächst zwei EditText mit Variablen verknüpfen, damit wir sie für unsere Eingabe verwenden können. Verknüpfen Sie also diese Bearbeitungsfelder mit Variablen, die wir geschrieben haben

"EditText e1=(EditText )findViewById(R.id.num1);"

Hier ist num1 die ID für das Textfeld und wir geben dem Textfeld mit der ID 'num1' nur einen Variablennamen 'e1'. In ähnlicher Weise müssen wir dieselbe Anweisung für das zweite Textfeld mit dem Variablennamen „e2“ verwenden. Für das dritte Textfeld haben wir verwendet

"TextView t1=(TextView) findViewById(R.id.result);"

Hier haben wir TextView verwendet, da wir nur Text anzeigen müssen und vermeiden, dass er vom Benutzer geändert werden kann. Jetzt müssen wir Zahlen in Form von Strings mit der Funktion getText() eingeben . Die Eingabeanweisung wird sein 

"String s11=e1.getText().toString();"

Hier speichert s11 die in Textbox 1 eingegebene Nummer. Wir müssen dasselbe mit einer anderen Textbox (e2) tun. Speichern Sie nun die Nummer in int-Form und wenden Sie die Addition an. Speichern Sie den Mehrwert in einer anderen Variablen. Um gespeicherte Summen anzuzeigen, müssen wir setText() wie folgt verwenden: 

result.setText(final_sum.toString())

final_sum speichert die Summe und muss in string(.toString()) konvertiert werden. Unten ist der Code für die MainActivity.java -Datei. Kommentare werden innerhalb des Codes hinzugefügt, um den Code genauer zu verstehen.

Java

import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
 
import androidx.appcompat.app.AppCompatActivity;
 
public class MainActivity extends AppCompatActivity {
 
    EditText e1, e2;
    TextView t1;
    int num1, num2;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
 
    // a public method to get the input numbers
    public boolean getNumbers() {
 
        // defining the edit text 1 to e1
        e1 = (EditText) findViewById(R.id.num1);
 
        // defining the edit text 2 to e2
        e2 = (EditText) findViewById(R.id.num2);
 
        // defining the text view to t1
        t1 = (TextView) findViewById(R.id.result);
 
        // taking input from text box 1
        String s1 = e1.getText().toString();
 
        // taking input from text box 2
        String s2 = e2.getText().toString();
 
        // condition to check if box is not empty
        if ((s1.equals(null) && s2.equals(null))
                || (s1.equals("") && s2.equals(""))) {
 
            String result = "Please enter a value";
            t1.setText(result);
 
            return false;
        } else {
            // converting string to int.
            num1 = Integer.parseInt(s1);
 
            // converting string to int.
            num2 = Integer.parseInt(s2);
        }
 
        return true;
    }
 
    // a public method to perform addition
    public void doSum(View v) {
 
        // get the input numbers
        if (getNumbers()) {
            int sum = num1 + num2;
            t1.setText(Integer.toString(sum));
        }
    }
 
    // a public method to perform power function
    public void doPow(View v) {
 
        // get the input numbers
        if (getNumbers()) {
            double sum = Math.pow(num1, num2);
            t1.setText(Double.toString(sum));
        }
    }
 
    // a public method to perform subtraction
    public void doSub(View v) {
 
        // get the input numbers
        if (getNumbers()) {
            int sum = num1 - num2;
            t1.setText(Integer.toString(sum));
        }
    }
 
    // a public method to perform multiplication
    public void doMul(View v) {
 
        // get the input numbers
        if (getNumbers()) {
            int sum = num1 * num2;
            t1.setText(Integer.toString(sum));
        }
    }
 
    // a public method to perform Division
    public void doDiv(View v) {
 
        // get the input numbers
        if (getNumbers()) {
 
            // displaying the text in text view assigned as t1
            double sum = num1 / (num2 * 1.0);
            t1.setText(Double.toString(sum));
        }
    }
 
    // a public method to perform modulus function
    public void doMod(View v) {
 
        // get the input numbers
        if (getNumbers()) {
            double sum = num1 % num2;
            t1.setText(Double.toString(sum));
        }
    }
}

Ausgabe:

Möchten Sie eine schnellere und wettbewerbsfähigere Umgebung, um die Grundlagen von Android zu erlernen?
Klicken Sie hier , um zu einem Leitfaden zu gelangen, der von unseren Experten speziell kuratiert wurde, um Ihre Branche in kürzester Zeit bereit zu machen!