Cara Membuat Aplikasi Kalkulator Android Studio Sederhana (Contoh + Source Code)
ANAKTEKNO.COM, Cara Membuat Aplikasi Kalkulator Android Studio Sederhana (Contoh + Source Code) - Setelah kemarin kita belajar tentang pengenalan Android Studio sederhana, hari ini kita akan belajar cara membuat aplikasi Android Studio sederhana, yaitu membuat kalkulator Java.
Di sini, kita akan membuat kalkulator perhitungan Matematika sederhana dengan lima operasi, yaitu penjumlahan, pengurangan, perkalian, pembagian dan bilangan berpangkat. Ya, program kalkulator ini sederhana dan bukan kalkulator Scientific.Aplikasi kalkulator ini tidak jauh berbeda dengan Aplikasi perhitungan di android yang menjadi bawaan hp yang biasa digunakan. Untuk logika pemrograman juga sebenarnya sama saja dengan cara membuat kalkulator C++ atau HTML untuk website. Jadi jika Anda sudah familiar dengan pemrograman lainnya, tentu mudah saja coding kalkulator Android Studio Java ini.
Cara Membuat Aplikasi Kalkulator Android Studio Sederhana (Contoh + Source Code)
Untuk lebih jelasnya, berikut ini tutorial lengkap cara membuat aplikasi kalkulator Android Studio sederhana beserta dengan source code-nya yang bisa running di hp android.
1. Buka aplikasi Android Studio
2. Buat Project Baru dengan nama kalkulator5
Secara otomatis akan ada file:
- MainActivity.java
- activity_main.xml
- home
- about
- Project > app > java > com.example.anaktekno
- home.java
- about.java
- activity_home.xml
- activity_about.xml
Project > app > res > drawble
Nama gambar:
- ss1.png
- ss2.png
- ssabout.png
Klik 2 kali pada setiap file di bawah ini dan copy and paste setiap kode.
a1. activity_main.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:animateLayoutChanges="false"
android:background="@drawable/ss1"
tools:context=".MainActivity">
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Loading..."
android:textColor="@color/colorAccent"
android:textSize="22dp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.529"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.907" />
</androidx.constraintlayout.widget.ConstraintLayout>
<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:animateLayoutChanges="false"
android:background="@drawable/ss1"
tools:context=".MainActivity">
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Loading..."
android:textColor="@color/colorAccent"
android:textSize="22dp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.529"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.907" />
</androidx.constraintlayout.widget.ConstraintLayout>
Berikut ini tampilan dari kode program di atas.

Inilah enaknya belajar Android Studio. Kita tidak perlu memasukkan komponen satu per satu karena semua bisa dilakukan melalui coding langsung yang didukung dengan automatic text.
a2. MainActivity.java
package com.example.kalkulator5;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.content.Intent;
import android.os.Handler;
public class MainActivity extends AppCompatActivity {
private int splashanaktekno = 2000;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
// after loading go to home.java
Intent home=new Intent(MainActivity.this, home.class);
startActivity(home);
finish();
}
}
,splashanaktekno);
}
}
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.content.Intent;
import android.os.Handler;
public class MainActivity extends AppCompatActivity {
private int splashanaktekno = 2000;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
// after loading go to home.java
Intent home=new Intent(MainActivity.this, home.class);
startActivity(home);
finish();
}
}
,splashanaktekno);
}
}
Sebelumnya, kamu bisa lihat penjelasan splash screen Android Studio dalam artikel sebelumnya tentang animation loading sederhana berpindah ke activity lain.
b1. activity_home.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="@drawable/ss2"
tools:context=".home">
<EditText
android:id="@+id/inputpertama"
android:layout_width="363dp"
android:layout_height="64dp"
android:layout_marginTop="32dp"
android:hint="angka pertama"
android:inputType="text|number"
android:textColor="@color/colorAccent2"
app:layout_constraintEnd_toEndOf="@+id/hasil"
app:layout_constraintHorizontal_bias="0.976"
app:layout_constraintStart_toStartOf="@+id/hasil"
app:layout_constraintTop_toBottomOf="@+id/hasil" />
<EditText
android:id="@+id/inputkedua"
android:layout_width="362dp"
android:layout_height="47dp"
android:hint="angka kedua"
android:inputType="text|number"
android:textColor="@color/colorAccent2"
app:layout_constraintEnd_toEndOf="@+id/inputpertama"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="@+id/inputpertama"
app:layout_constraintTop_toBottomOf="@+id/inputpertama" />
<TextView
android:id="@+id/hasil"
android:layout_width="237dp"
android:layout_height="41dp"
android:layout_marginTop="64dp"
android:text="Hasil "
android:textAlignment="viewEnd"
android:textColor="@color/colorAccent2"
android:textSize="20dp"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.844"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<Button
android:id="@+id/button"
android:layout_width="60dp"
android:layout_height="40dp"
android:background="@color/colorAccent"
android:onClick="tambah"
android:text="+"
android:textColor="@color/colorAccent3"
android:textSize="18dp"
android:textStyle="bold"
app:layout_constraintEnd_toStartOf="@+id/button2"
app:layout_constraintHorizontal_bias="0.048"
app:layout_constraintStart_toStartOf="@+id/inputkedua"
app:layout_constraintTop_toBottomOf="@+id/inputkedua" />
<Button
android:id="@+id/button2"
android:layout_width="60dp"
android:layout_height="40dp"
android:layout_marginEnd="16dp"
android:background="@color/colorAccent"
android:onClick="kurang"
android:text="-"
android:textColor="@color/colorAccent3"
android:textSize="18dp"
android:textStyle="bold"
app:layout_constraintEnd_toStartOf="@+id/button3"
app:layout_constraintTop_toBottomOf="@+id/inputkedua" />
<Button
android:id="@+id/button3"
android:layout_width="60dp"
android:layout_height="40dp"
android:layout_marginEnd="12dp"
android:background="@color/colorAccent"
android:onClick="kali"
android:text="x"
android:textColor="@color/colorAccent3"
android:textSize="18dp"
android:textStyle="bold"
app:layout_constraintEnd_toStartOf="@+id/button4"
app:layout_constraintTop_toBottomOf="@+id/inputkedua" />
<Button
android:id="@+id/button4"
android:layout_width="60dp"
android:layout_height="40dp"
android:layout_marginEnd="12dp"
android:background="@color/colorAccent"
android:onClick="bagi"
android:text=":"
android:textColor="@color/colorAccent3"
android:textSize="18dp"
android:textStyle="bold"
app:layout_constraintEnd_toStartOf="@+id/button6"
app:layout_constraintTop_toBottomOf="@+id/inputkedua" />
<Button
android:id="@+id/button5"
android:layout_width="60dp"
android:layout_height="40dp"
android:layout_marginTop="20dp"
android:background="@color/colorAccent1"
android:onClick="hapus"
android:text="C"
android:textColor="@color/colorAccent3"
app:layout_constraintEnd_toEndOf="@+id/button6"
app:layout_constraintHorizontal_bias="0.518"
app:layout_constraintStart_toStartOf="@+id/button"
app:layout_constraintTop_toBottomOf="@+id/button3" />
<Button
android:id="@+id/button6"
android:layout_width="60dp"
android:layout_height="40dp"
android:background="@color/colorAccent"
android:onClick="pangkat"
android:text="^"
android:textColor="@color/colorAccent3"
android:textSize="18dp"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="@+id/inputkedua"
app:layout_constraintTop_toBottomOf="@+id/inputkedua" />
<Button
android:id="@+id/button7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="about"
android:text="About Me"
android:textColor="@color/colorAccent3"
android:textSize="18dp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="@+id/button5"
app:layout_constraintHorizontal_bias="0.518"
app:layout_constraintStart_toStartOf="@+id/button5"
app:layout_constraintTop_toBottomOf="@+id/button5"
app:layout_constraintVertical_bias="0.626" />
</androidx.constraintlayout.widget.ConstraintLayout>
<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="@drawable/ss2"
tools:context=".home">
<EditText
android:id="@+id/inputpertama"
android:layout_width="363dp"
android:layout_height="64dp"
android:layout_marginTop="32dp"
android:hint="angka pertama"
android:inputType="text|number"
android:textColor="@color/colorAccent2"
app:layout_constraintEnd_toEndOf="@+id/hasil"
app:layout_constraintHorizontal_bias="0.976"
app:layout_constraintStart_toStartOf="@+id/hasil"
app:layout_constraintTop_toBottomOf="@+id/hasil" />
<EditText
android:id="@+id/inputkedua"
android:layout_width="362dp"
android:layout_height="47dp"
android:hint="angka kedua"
android:inputType="text|number"
android:textColor="@color/colorAccent2"
app:layout_constraintEnd_toEndOf="@+id/inputpertama"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="@+id/inputpertama"
app:layout_constraintTop_toBottomOf="@+id/inputpertama" />
<TextView
android:id="@+id/hasil"
android:layout_width="237dp"
android:layout_height="41dp"
android:layout_marginTop="64dp"
android:text="Hasil "
android:textAlignment="viewEnd"
android:textColor="@color/colorAccent2"
android:textSize="20dp"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.844"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<Button
android:id="@+id/button"
android:layout_width="60dp"
android:layout_height="40dp"
android:background="@color/colorAccent"
android:onClick="tambah"
android:text="+"
android:textColor="@color/colorAccent3"
android:textSize="18dp"
android:textStyle="bold"
app:layout_constraintEnd_toStartOf="@+id/button2"
app:layout_constraintHorizontal_bias="0.048"
app:layout_constraintStart_toStartOf="@+id/inputkedua"
app:layout_constraintTop_toBottomOf="@+id/inputkedua" />
<Button
android:id="@+id/button2"
android:layout_width="60dp"
android:layout_height="40dp"
android:layout_marginEnd="16dp"
android:background="@color/colorAccent"
android:onClick="kurang"
android:text="-"
android:textColor="@color/colorAccent3"
android:textSize="18dp"
android:textStyle="bold"
app:layout_constraintEnd_toStartOf="@+id/button3"
app:layout_constraintTop_toBottomOf="@+id/inputkedua" />
<Button
android:id="@+id/button3"
android:layout_width="60dp"
android:layout_height="40dp"
android:layout_marginEnd="12dp"
android:background="@color/colorAccent"
android:onClick="kali"
android:text="x"
android:textColor="@color/colorAccent3"
android:textSize="18dp"
android:textStyle="bold"
app:layout_constraintEnd_toStartOf="@+id/button4"
app:layout_constraintTop_toBottomOf="@+id/inputkedua" />
<Button
android:id="@+id/button4"
android:layout_width="60dp"
android:layout_height="40dp"
android:layout_marginEnd="12dp"
android:background="@color/colorAccent"
android:onClick="bagi"
android:text=":"
android:textColor="@color/colorAccent3"
android:textSize="18dp"
android:textStyle="bold"
app:layout_constraintEnd_toStartOf="@+id/button6"
app:layout_constraintTop_toBottomOf="@+id/inputkedua" />
<Button
android:id="@+id/button5"
android:layout_width="60dp"
android:layout_height="40dp"
android:layout_marginTop="20dp"
android:background="@color/colorAccent1"
android:onClick="hapus"
android:text="C"
android:textColor="@color/colorAccent3"
app:layout_constraintEnd_toEndOf="@+id/button6"
app:layout_constraintHorizontal_bias="0.518"
app:layout_constraintStart_toStartOf="@+id/button"
app:layout_constraintTop_toBottomOf="@+id/button3" />
<Button
android:id="@+id/button6"
android:layout_width="60dp"
android:layout_height="40dp"
android:background="@color/colorAccent"
android:onClick="pangkat"
android:text="^"
android:textColor="@color/colorAccent3"
android:textSize="18dp"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="@+id/inputkedua"
app:layout_constraintTop_toBottomOf="@+id/inputkedua" />
<Button
android:id="@+id/button7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="about"
android:text="About Me"
android:textColor="@color/colorAccent3"
android:textSize="18dp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="@+id/button5"
app:layout_constraintHorizontal_bias="0.518"
app:layout_constraintStart_toStartOf="@+id/button5"
app:layout_constraintTop_toBottomOf="@+id/button5"
app:layout_constraintVertical_bias="0.626" />
</androidx.constraintlayout.widget.ConstraintLayout>
Tampilan untuk kode di atas adalah sebagai berikut.

Ini adalah jendela 2 yang akan panggil/dituju setelah jendela 1 tertutup. Oh ya, di jendela 1 di atas, kita menggunakan splash screen yang secara otomatis menuju activity lainnya.
b2. home.java
package com.example.kalkulator5;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class home extends AppCompatActivity {
// deklarasi variabel tipe data double
EditText Angka1,Angka2;
TextView output;
Double a,b,c;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
Angka1 = (EditText) findViewById(R.id.inputpertama);
Angka2 = (EditText) findViewById(R.id.inputkedua);
output = (TextView) findViewById(R.id.hasil);
}
public void konversi(){
a = Double.parseDouble(Angka1.getText().toString());
b = Double.parseDouble(Angka2.getText().toString());
}
// PENJUMLAHAN ANDROID STUDIO
public void tambah(View view) {
if ((Angka1.getText().length() > 0) && (Angka2.getText().length() > 0)) {
konversi();
c = (a+b);
// Kode untuk menampilkan angka hasil operasi
output.setText(Double.toString(c));
} else {
Toast toast = Toast.makeText(home.this, "Mohon masukkan Angka pertama & Kedua", Toast.LENGTH_LONG);
toast.show();
}
}
// PENGURANGAN ANDROID STUDIO
public void kurang(View view) {
if ((Angka1.getText().length() > 0) && (Angka2.getText().length() > 0)) {
konversi();
c = (a-b);
output.setText(Double.toString(c));
} else {
Toast toast = Toast.makeText(home.this, "Mohon masukkan Angka pertama & Kedua", Toast.LENGTH_LONG);
toast.show();
}
}
// PERKALIAN ANDROID STUDIO
public void kali(View view) {
if ((Angka1.getText().length() > 0) && (Angka2.getText().length() > 0)) {
konversi();
c = (a*b);
output.setText(Double.toString(c));
} else {
Toast toast = Toast.makeText(home.this, "Mohon masukkan Angka pertama & Kedua", Toast.LENGTH_LONG);
toast.show();
}
}
// PEMBAGIAN ANDROID STUDIO
public void bagi(View view) {
if ((Angka1.getText().length() > 0) && (Angka2.getText().length() > 0)) {
konversi();
c = (a/b);
output.setText(Double.toString(c));
} else {
Toast toast = Toast.makeText(home.this, "Mohon masukkan Angka pertama & Kedua", Toast.LENGTH_LONG);
toast.show();
}
}
// PANGKAT ANDROID STUDIO
public void pangkat(View view) {
if ((Angka1.getText().length() > 0) && (Angka2.getText().length() > 0)) {
konversi();
c = Math.pow(a,b);
output.setText(Double.toString(c));
} else {
Toast toast = Toast.makeText(home.this, "Mohon masukkan Angka pertama & Kedua", Toast.LENGTH_LONG);
toast.show();
}
}
// RESET ANGKA ATAU BUTTON HAPUS
public void hapus(View view) {
Angka1.setText("");
Angka2.setText("");
output.setText("");
Angka1.requestFocus();
}
public void about(View view) {
Intent home = new Intent(home.this, about.class);
startActivity(home);
}
}
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class home extends AppCompatActivity {
// deklarasi variabel tipe data double
EditText Angka1,Angka2;
TextView output;
Double a,b,c;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
Angka1 = (EditText) findViewById(R.id.inputpertama);
Angka2 = (EditText) findViewById(R.id.inputkedua);
output = (TextView) findViewById(R.id.hasil);
}
public void konversi(){
a = Double.parseDouble(Angka1.getText().toString());
b = Double.parseDouble(Angka2.getText().toString());
}
// PENJUMLAHAN ANDROID STUDIO
public void tambah(View view) {
if ((Angka1.getText().length() > 0) && (Angka2.getText().length() > 0)) {
konversi();
c = (a+b);
// Kode untuk menampilkan angka hasil operasi
output.setText(Double.toString(c));
} else {
Toast toast = Toast.makeText(home.this, "Mohon masukkan Angka pertama & Kedua", Toast.LENGTH_LONG);
toast.show();
}
}
// PENGURANGAN ANDROID STUDIO
public void kurang(View view) {
if ((Angka1.getText().length() > 0) && (Angka2.getText().length() > 0)) {
konversi();
c = (a-b);
output.setText(Double.toString(c));
} else {
Toast toast = Toast.makeText(home.this, "Mohon masukkan Angka pertama & Kedua", Toast.LENGTH_LONG);
toast.show();
}
}
// PERKALIAN ANDROID STUDIO
public void kali(View view) {
if ((Angka1.getText().length() > 0) && (Angka2.getText().length() > 0)) {
konversi();
c = (a*b);
output.setText(Double.toString(c));
} else {
Toast toast = Toast.makeText(home.this, "Mohon masukkan Angka pertama & Kedua", Toast.LENGTH_LONG);
toast.show();
}
}
// PEMBAGIAN ANDROID STUDIO
public void bagi(View view) {
if ((Angka1.getText().length() > 0) && (Angka2.getText().length() > 0)) {
konversi();
c = (a/b);
output.setText(Double.toString(c));
} else {
Toast toast = Toast.makeText(home.this, "Mohon masukkan Angka pertama & Kedua", Toast.LENGTH_LONG);
toast.show();
}
}
// PANGKAT ANDROID STUDIO
public void pangkat(View view) {
if ((Angka1.getText().length() > 0) && (Angka2.getText().length() > 0)) {
konversi();
c = Math.pow(a,b);
output.setText(Double.toString(c));
} else {
Toast toast = Toast.makeText(home.this, "Mohon masukkan Angka pertama & Kedua", Toast.LENGTH_LONG);
toast.show();
}
}
// RESET ANGKA ATAU BUTTON HAPUS
public void hapus(View view) {
Angka1.setText("");
Angka2.setText("");
output.setText("");
Angka1.requestFocus();
}
public void about(View view) {
Intent home = new Intent(home.this, about.class);
startActivity(home);
}
}
Lihat juga cara membuat Toast di Android Studio
c1. activity_about.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:background="@drawable/ss2"
android:layout_height="match_parent"
tools:context=".about">
<TextView
android:id="@+id/textView5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Cp: WA 085396717324/ lara4store@gmail.com"
android:textSize="14dp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.511"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.817" />
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.637"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.178"
app:srcCompat="@drawable/ssabout" />
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="anaktekno.com"
android:textSize="18dp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.262"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.746" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="2020"
android:textSize="18dp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.737"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.746" />
<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Created by"
android:textSize="20dp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.672" />
</androidx.constraintlayout.widget.ConstraintLayout>
<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:background="@drawable/ss2"
android:layout_height="match_parent"
tools:context=".about">
<TextView
android:id="@+id/textView5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Cp: WA 085396717324/ lara4store@gmail.com"
android:textSize="14dp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.511"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.817" />
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.637"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.178"
app:srcCompat="@drawable/ssabout" />
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="anaktekno.com"
android:textSize="18dp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.262"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.746" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="2020"
android:textSize="18dp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.737"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.746" />
<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Created by"
android:textSize="20dp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.672" />
</androidx.constraintlayout.widget.ConstraintLayout>
Berikut ini tampilan ketika tombol About diklik pada jendela 2. Akan menuju ke jendela 3, yaitu About.

Sebenarnya, kodenya tidak terlalu berbeda antara berpindah activity dengan tombol atau pun dengan timer splash screen.
c2. about.java
package com.example.kalkulator5;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
public class about extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_about);
}
}
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
public class about extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_about);
}
}
6. Edit file colors.xml di
Project > app > values > colors.xml
Copy paste kode berikut ini ke colors.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="colorPrimary">#3CE40E</color>
<color name="colorPrimaryDark">#00574B</color>
<color name="colorAccent">#3CE40E</color>
<color name="colorAccent1">#E90936</color>
<color name="colorAccent2">#0C0B0B</color>
<color name="colorAccent3">#FFFFFF</color>
</resources>
<resources>
<color name="colorPrimary">#3CE40E</color>
<color name="colorPrimaryDark">#00574B</color>
<color name="colorAccent">#3CE40E</color>
<color name="colorAccent1">#E90936</color>
<color name="colorAccent2">#0C0B0B</color>
<color name="colorAccent3">#FFFFFF</color>
</resources>
Sampai di sini, seharusnya ketika aplikasi di running, maka kita sudah bisa menggunakan kalkulator sederhana ini.
Penjelasan kode program:
Saya hanya akan menjelaskan kode yang di home.java
Tanpa control statementf fungsi if else dengan menggunakan toast, ketika kita mengklik tombol jumlah, kurang, kali, bagi, atau pangkat tanpa mengisi angka di EditText, maka aplikasi akan keluar sendiri ketika dijalankan.
else {
Toast toast = Toast.makeText(home.this, "Mohon masukkan Angka pertama & Kedua", Toast.LENGTH_LONG);
toast.show();
Toast toast = Toast.makeText(home.this, "Mohon masukkan Angka pertama & Kedua", Toast.LENGTH_LONG);
toast.show();
Karena itu, kita menggunakan kode ini agar aplikasi tidak keluar sendiri.
Jika kamu baru belajar Android Studio, sebaiknya kamu pahami beberapa hal yang paling penting terkait Android Studio. Silahkan belajar bagian-bagian dasar yang sudah Anaktekno.com buatkan dalam label Programmer.
Lihat juga cara membuat aplikasi Android untuk pemula Android Studio
Demikianlah cara membuat aplikasi kalkulator Android Studio sederhana lengkap dengan contoh dan source code program perhitungan android sederhana Java. Semoga bermanfaat!
Anak Tekno Tertarik dengan dunia Blog dan SEO sejak 2017 dan terus belajar sampai detik ini..