Home Pemrogramman Android Studio Cara membuat Kalculator Android Studio

Cara membuat Kalculator Android Studio

0
69

Halo sobat kali ini saya akan menunjukkan source code untuk Aplikasi Kalkulator yang dibuat dengan Android Studio. Untuk pejelasan mengenai source codenya ada dibagian komentar code.

Cara membuat kalkulator dengan android studio ini sangatlah mudah, pertama buat project empety baru. Kemudian copykan source code atau code dibawah ini sesuai dengan fungsinya

Baca juga artikel lainnya

Pertama adalah code untuk MainActivity.java

package com.example.petera.mycalculator;

import android.content.Context;

import android.content.Intent;

import android.support.v7.app.AppCompatActivity;

import android.os.Bundle;

import android.view.View;

import android.view.inputmethod.InputMethod;

import android.view.inputmethod.InputMethodManager;

import android.widget.Button;

import android.widget.EditText;

import android.widget.Toast;

public class MainActivity extends AppCompatActivity implements View.OnClickListener {

// Membuat variable Edit Text

EditText enterAngka;

// Membuat variable Button, untuk kelompok operator

Button buttonTambah, buttonKurang, buttonBagi, buttonKali, buttonSama;

// Membuat variable Button untuk membersihkan

Button buttonClear;

// Membuat variable Button untuk input angka

Button button1, button2, button3,button4,button5,button6,button7,button8,button9,button0;

// Membuat variable Button menuju ke aktivity tentang

Button buttonTentang;

// Mendaftarkan variable double, nama : nilai untuk menyimpan nilai input angka dari user

public static double nilai = 0;

// Mendaftarkan variable String, nama : operasi untuk menyimpan pilihan

public static String operasi = “”;

// Mendaftarkan variable double, nama : hasil untuk hasil akhir

public static double hasil=0.0;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

// Memanggil method operasihitung

operasihitung();

// Membuat variable buttonTentang agar memiliki fungsi sama dengan

// id buttonTentang di activity_main.xml

buttonTentang = findViewById(R.id.buttonTentang);

// Membuat buttonTentang dapat dilik

buttonTentang.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

// Membuat intent agar buttonTentang jika di klik nanti menuju ke Tentang.class

Intent i = new Intent(MainActivity.this, Tentang.class);

// Menjalankan Intent

startActivity(i);

}

});

}

// Method dengan nama operasihitung yang akan dipanggil ke onCreate

void operasihitung(){

// Membuat variable enterAngka agar memiliki fungsi sama dengan

// id editText2 di activity_main.xml

enterAngka = findViewById(R.id.editText2);

// Membuat variable button0 sampai button9 agar memiliki fungsi sama dengan

// id button0 sampai button9 sesuai dengan yang dinginkan di activity_main.xml

// dan dapat di klik

button0 = findViewById(R.id.button0);

button0.setOnClickListener(this);

button1 = findViewById(R.id.button1);

button1.setOnClickListener(this);

button2 = findViewById(R.id.button2);

button2.setOnClickListener(this);

button3 = findViewById(R.id.button3);

button3.setOnClickListener(this);

button4 = findViewById(R.id.button4);

button4.setOnClickListener(this);

button5 = findViewById(R.id.button5);

button5.setOnClickListener(this);

button6 = findViewById(R.id.button6);

button6.setOnClickListener(this);

button7 = findViewById(R.id.button7);

button7.setOnClickListener(this);

button8 = findViewById(R.id.button8);

button8.setOnClickListener(this);

button9 = findViewById(R.id.button9);

button9.setOnClickListener(this);

// Membuat variable operasi agar memiliki fungsi sama dengan

// id Button operasi di activity_main.xml dan dapat di klik

buttonTambah = findViewById(R.id.buttonTambah);

buttonTambah.setOnClickListener(this);

buttonKali= findViewById(R.id.buttonKali);

buttonKali.setOnClickListener(this);

buttonKurang = findViewById(R.id.buttonKurang);

buttonKurang.setOnClickListener(this);

buttonBagi= findViewById(R.id.buttonBagi);

buttonBagi.setOnClickListener(this);

buttonSama= findViewById(R.id.buttonSama);

buttonSama.setOnClickListener(this);

// Membuat variable buttonClear agar memiliki fungsi sama dengan

// id buttonC di activity_main.xml dan dapat di klik

buttonClear= findViewById(R.id.buttonC);

buttonClear.setOnClickListener(this);

}

// Method agar saat button diklik memiliki fungsi

@Override

public void onClick(View v) {

// Fungsi pemilihan

switch (v.getId()) {

// Pemilihan button agar saat mengklik button memunculkan angka yang diinginkan

case R.id.button0:

enterAngka.setText(enterAngka.getText().toString().trim() + “0”);

break;

case R.id.button1:

enterAngka.setText(enterAngka.getText().toString().trim() + “1”);

break;

case R.id.button2:

enterAngka.setText(enterAngka.getText().toString().trim() + “2”);

break;

case R.id.button3:

enterAngka.setText(enterAngka.getText().toString().trim() + “3”);

break;

case R.id.button4:

enterAngka.setText(enterAngka.getText().toString().trim() + “4”);

break;

case R.id.button5:

enterAngka.setText(enterAngka.getText().toString().trim() + “5”);

break;

case R.id.button6:

enterAngka.setText(enterAngka.getText().toString().trim() + “6”);

break;

case R.id.button7:

enterAngka.setText(enterAngka.getText().toString().trim() + “7”);

break;

case R.id.button8:

enterAngka.setText(enterAngka.getText().toString().trim() + “8”);

break;

case R.id.button9:

enterAngka.setText(enterAngka.getText().toString().trim() + “9”);

break;

// Pemilihan operasi yang ingin digunakan

case R.id.buttonTambah:

// Jika enterAngka tidak ada isinya (null) maka nanti akan memunculkan pesan

// Jika tidak akan melakukan operasi

if (enterAngka.getText().toString().isEmpty())

{

Toast.makeText(this, “Masukkan angka”, Toast.LENGTH_SHORT).show();

}else {

nilai = Double.parseDouble(enterAngka.getText().toString().trim());

operasi = “tambah”;

enterAngka.setText(“”);

}

break;

case R.id.buttonKurang:

if (enterAngka.getText().toString().isEmpty())

{

Toast.makeText(this, “Masukkan angka”, Toast.LENGTH_SHORT).show();

}else {

nilai = Double.parseDouble(enterAngka.getText().toString().trim());

operasi = “kurang”;

enterAngka.setText(“”);

}

break;

case R.id.buttonBagi:

if (enterAngka.getText().toString().isEmpty())

{

Toast.makeText(this, “Masukkan angka”, Toast.LENGTH_SHORT).show();

}else {

nilai = Double.parseDouble(enterAngka.getText().toString().trim());

operasi = “bagi”;

enterAngka.setText(“”);

}

break;

case R.id.buttonKali:

if (enterAngka.getText().toString().isEmpty())

{

Toast.makeText(this, “Masukkan angka”, Toast.LENGTH_SHORT).show();

}else {

operasi = “kali”;

nilai = Double.parseDouble(enterAngka.getText().toString().trim());

enterAngka.setText(“”);

}

break;

// Agar enterAngka menjadi kosong

case R.id.buttonC:

nilai = 0;

hasil = 0.0;

enterAngka.setText(“”);

break;

// Untuk melakukan operasi akhir

case R.id.buttonSama:

if(operasi.equals(“tambah”)) {

if (enterAngka.getText().toString().isEmpty())

{

Toast.makeText(this, “Masukkan angka”, Toast.LENGTH_SHORT).show();

}else {

hasil = nilai + Double.parseDouble(enterAngka.getText().toString().trim());

}

}

if(operasi.equals(“kurang”))

{

if (enterAngka.getText().toString().isEmpty())

{

Toast.makeText(this, “Masukkan angka”, Toast.LENGTH_SHORT).show();

}else {

hasil = nilai – Double.parseDouble(enterAngka.getText().toString().trim());

}

}

if(operasi.equals(“bagi”))

{

if (enterAngka.getText().toString().isEmpty())

{

Toast.makeText(this, “Masukkan angka”, Toast.LENGTH_SHORT).show();

}else {

hasil = nilai / Double.parseDouble(enterAngka.getText().toString().trim());

}

}

if(operasi.equals(“kali”))

{

if (enterAngka.getText().toString().isEmpty())

{

Toast.makeText(this, “Masukkan angka”, Toast.LENGTH_SHORT).show();

}else {

hasil = nilai * Double.parseDouble(enterAngka.getText().toString().trim());

}

}

int total = (int) hasil;

if (total == hasil){

enterAngka.setText(String.valueOf((int) hasil));

}else {

enterAngka.setText(String.valueOf(hasil));

}

break;

}

}

}

 

Selanjutnya untuk activity_main.xml

Baca juga artikel lainnya

<?xml version=”1.0″ encoding=”utf-8″?>

<android.support.constraint.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=”@color/satu”

tools:context=”.MainActivity”>

<!–Edit text yang digunakan untuk memasukkan angka–>

<EditText

android:id=”@+id/editText2″

android:layout_width=”279dp”

android:layout_height=”27dp”

android:layout_marginBottom=”20dp”

android:layout_marginTop=”30dp”

android:background=”@color/tiga”

android:ems=”10″

android:hint=”Masukkan Angka”

android:inputType=”number”

app:layout_constraintBottom_toTopOf=”@+id/tableLayout”

app:layout_constraintEnd_toEndOf=”parent”

app:layout_constraintHorizontal_bias=”0.503″

app:layout_constraintStart_toStartOf=”parent”

app:layout_constraintTop_toTopOf=”parent”

app:layout_constraintVertical_bias=”0.0″ />

<!–Table Layout agar button tersusun rapi–>

<TableLayout

android:id=”@+id/tableLayout”

android:layout_width=”304dp”

android:layout_height=”398dp”

android:layout_marginBottom=”24dp”

android:layout_marginTop=”21dp”

app:layout_constraintBottom_toBottomOf=”parent”

app:layout_constraintEnd_toEndOf=”@+id/editText2″

app:layout_constraintHorizontal_bias=”0.505″

app:layout_constraintStart_toStartOf=”@+id/editText2″

app:layout_constraintTop_toBottomOf=”@+id/editText2″>

<TableRow

android:layout_width=”match_parent”

android:layout_height=”match_parent”>

<Button

android:id=”@+id/button1″

android:layout_width=”57.5dp”

android:layout_height=”wrap_content”

android:layout_marginLeft=”5dp”

android:layout_marginRight=”20dp”

android:text=”1″

android:textStyle=”bold” />

<Button

android:id=”@+id/button2″

android:layout_width=”57.5dp”

android:layout_height=”wrap_content”

android:layout_marginRight=”20dp”

android:text=”2″

android:textStyle=”bold” />

<Button

android:id=”@+id/button3″

android:layout_width=”57.5dp”

android:layout_height=”wrap_content”

android:layout_marginRight=”20dp”

android:text=”3″

android:textStyle=”bold” />

<Button

android:id=”@+id/buttonTambah”

android:layout_width=”57.5dp”

android:layout_height=”wrap_content”

android:layout_marginRight=”20dp”

android:text=”+”

android:textStyle=”bold” />

</TableRow>

<TableRow

android:layout_width=”match_parent”

android:layout_height=”match_parent”>

<Button

android:id=”@+id/button4″

android:layout_width=”57.5dp”

android:layout_height=”wrap_content”

android:layout_marginLeft=”5dp”

android:layout_marginRight=”20dp”

android:text=”4″

android:textStyle=”bold” />

<Button

android:id=”@+id/button5″

android:layout_width=”57.5dp”

android:layout_height=”wrap_content”

android:layout_marginRight=”20dp”

android:text=”5″

android:textStyle=”bold” />

<Button

android:id=”@+id/button6″

android:layout_width=”57.5dp”

android:layout_height=”wrap_content”

android:layout_marginRight=”20dp”

android:text=”6″

android:textStyle=”bold” />

<Button

android:id=”@+id/buttonKurang”

android:layout_width=”57.5dp”

android:layout_height=”wrap_content”

android:layout_marginRight=”20dp”

android:text=”-”

android:textStyle=”bold” />

</TableRow>

<TableRow

android:layout_width=”match_parent”

android:layout_height=”match_parent”>

<Button

android:id=”@+id/button7″

android:layout_width=”57.5dp”

android:layout_height=”wrap_content”

android:layout_marginLeft=”5dp”

android:layout_marginRight=”20dp”

android:text=”7″

android:textStyle=”bold” />

<Button

android:id=”@+id/button8″

android:layout_width=”57.5dp”

android:layout_height=”wrap_content”

android:layout_marginRight=”20dp”

android:text=”8″

android:textStyle=”bold” />

<Button

android:id=”@+id/button9″

android:layout_width=”57.5dp”

android:layout_height=”wrap_content”

android:layout_marginRight=”20dp”

android:text=”9″

android:textStyle=”bold” />

<Button

android:id=”@+id/buttonKali”

android:layout_width=”57.5dp”

android:layout_height=”wrap_content”

android:layout_marginRight=”20dp”

android:text=”*”

android:textStyle=”bold” />

</TableRow>

<TableRow

android:layout_width=”match_parent”

android:layout_height=”match_parent”>

<Button

android:id=”@+id/button0″

android:layout_width=”57.5dp”

android:layout_height=”wrap_content”

android:layout_marginLeft=”5dp”

android:layout_marginRight=”20dp”

android:text=”0″

android:textStyle=”bold” />

<Button

android:id=”@+id/buttonC”

android:layout_width=”57.5dp”

android:layout_height=”wrap_content”

android:layout_marginRight=”20dp”

android:text=”C”

android:textStyle=”bold” />

<Button

android:id=”@+id/buttonSama”

android:layout_width=”57.5dp”

android:layout_height=”wrap_content”

android:layout_marginRight=”20dp”

android:text=”=”

android:textStyle=”bold” />

<Button

android:id=”@+id/buttonBagi”

android:layout_width=”57.5dp”

android:layout_height=”wrap_content”

android:layout_marginRight=”20dp”

android:text=”/”

android:textStyle=”bold” />

</TableRow>

</TableLayout>

<!–Digunakan untuk menuju ke aktivity satunya yang berisi,

text view tentang aplikasi ini–>

<Button

android:id=”@+id/buttonTentang”

android:layout_width=”wrap_content”

android:layout_height=”wrap_content”

android:layout_marginBottom=”64dp”

android:layout_marginEnd=”8dp”

android:layout_marginStart=”8dp”

android:text=”TENTANG”

android:textStyle=”bold”

app:layout_constraintBottom_toBottomOf=”@+id/tableLayout”

app:layout_constraintEnd_toEndOf=”@+id/tableLayout”

app:layout_constraintStart_toStartOf=”@+id/tableLayout” />

<android.support.constraint.Group

android:id=”@+id/group”

android:layout_width=”wrap_content”

android:layout_height=”wrap_content” />

</android.support.constraint.ConstraintLayout>

Beginilah tampilan setelah jadi

 

NO COMMENTS

LEAVE A REPLY

Please enter your comment!
Please enter your name here