Tujuan
Codelab ini bertujuan untuk
mengimplementasikan komponen Activity pada aplikasi pertama
yang kamu bangun sehingga dapat memberikan gambaran tentang bagaimana Activity ditampilkan.
Kemudian anda memberikan Interaksi di dalamnya seperti memberi input dan
mengklik sebuah tombol.
Logika Melakukan input ke dalam
obyek TextBox → Melakukan validasi input → Melakukan
perhitungan volume balok ketika tombol hitung diklik
Langkah langkah Pengerjaan
1. Buat Project Baru dengan Nama "App Volume"
Kode activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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:paddingBottom="16dp"
android:orientation="vertical"
tools:context=".MainActivity">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Panjang"
/>
<EditText
android:id="@+id/edt_panjang"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="numberDecimal"
android:lines="1"
android:layout_marginBottom="25dp"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Lebar"
/>
<EditText
android:id="@+id/edt_lebar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="numberDecimal"
android:lines="1"
android:layout_marginBottom="25dp"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Tinggi"/>
<EditText
android:id="@+id/edt_tinggi"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="numberDecimal"
android:lines="1"
android:layout_marginBottom="20dp"/>
<Button
android:id="@+id/btn_hitung"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/hitung"
android:layout_marginBottom="30dp"/>
<TextView
android:id="@+id/tv_hasil"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="Hasil"
android:textSize="40sp"
android:textStyle="bold"
android:layout_marginBottom="16dp"/>
</LinearLayout>
Kode dalam MainActivity.java
package com.septian.andre.hitungvolume;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private EditText edtPanjang, edtLebar, edtTinggi;
private Button btnHitung;
private TextView tvHasil;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
edtPanjang = (EditText)findViewById(R.id.edt_panjang);
edtLebar = (EditText)findViewById(R.id.edt_lebar);
edtTinggi = (EditText)findViewById(R.id.edt_tinggi);
btnHitung = (Button)findViewById(R.id.btn_hitung);
tvHasil = (TextView)findViewById(R.id.tv_hasil);
btnHitung.setOnClickListener(this);
}
public void onClick(View v) {
if (v.getId() == R.id.btn_hitung) {
String panjang = edtPanjang.getText().toString().trim();
String lebar = edtLebar.getText().toString().trim();
String tinggi = edtTinggi.getText().toString().trim();
boolean isEmpetyFields = false;
if (TextUtils.isEmpty(panjang)) {
isEmpetyFields = true;
edtPanjang.setError("Field Ini Tidak Boleh Kosong");
}
if (TextUtils.isEmpty(lebar)) {
isEmpetyFields = true;
edtLebar.setError("Field Ini Tidak Boleh Kosong");
}
if (TextUtils.isEmpty(tinggi)) {
isEmpetyFields = true;
edtTinggi.setError("Field Ini Tidak Boleh Kosong");
}
if (!isEmpetyFields) {
double l = Double.parseDouble(lebar);
double p = Double.parseDouble(panjang);
double t = Double.parseDouble(tinggi);
double volume = l * p * t;
tvHasil.setText(String.valueOf(volume));
}
}
}
}
Membuat Aplikasi Android Sederhana (Aplikasi Hitung Volume)
Reviewed by Argasoka Herbal
on
Senin, Agustus 13, 2018
Rating:
Bang ini untuk volume balok kah bang ?
BalasHapus