Advertisement
rachmadi

Segi Empat Pro

Jul 13th, 2016
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.77 KB | None | 0 0
  1. package com.training.android.segiempat;
  2.  
  3. import android.support.v7.app.AppCompatActivity;
  4. import android.os.Bundle;
  5. import android.text.TextUtils;
  6. import android.view.View;
  7. import android.widget.Button;
  8. import android.widget.EditText;
  9. import android.widget.TextView;
  10.  
  11. public class MainActivity extends AppCompatActivity {
  12.     // deklarasi tipe
  13.     EditText etPanjang, etLebar;
  14.     TextView tvLuas, tvKeliling;
  15.     Button btnHitung;
  16.     String sPanjang, sLebar;
  17.  
  18.     @Override
  19.     protected void onCreate(Bundle savedInstanceState) {
  20.         super.onCreate(savedInstanceState);
  21.         setContentView(R.layout.activity_main);
  22.  
  23.         etPanjang = (EditText) findViewById(R.id.etPanjang);
  24.         etLebar = (EditText) findViewById(R.id.etLebar);
  25.         tvLuas = (TextView) findViewById(R.id.tvLuas);
  26.         tvKeliling = (TextView) findViewById(R.id.tvKeliling);
  27.         btnHitung = (Button) findViewById(R.id.btnHitung);
  28.  
  29.         // setOnclickListener
  30.         btnHitung.setOnClickListener(new View.OnClickListener() {
  31.             @Override
  32.             public void onClick(View view) {
  33.                 sPanjang = etPanjang.getText().toString();
  34.                 sLebar = etLebar.getText().toString();
  35.                 hitungLuas(sPanjang, sLebar);
  36.                 hitungKeliling(sPanjang, sLebar);
  37.             }
  38.         });
  39.     }
  40.  
  41.     private void hitungKeliling(String sPanjang, String sLebar) {
  42.         boolean status = isEmpty(sPanjang, sLebar);
  43.         if (!status){
  44.             float panjang = Float.parseFloat(sPanjang);
  45.             float lebar = Float.parseFloat(sLebar);
  46.             float keliling = 2*panjang + 2*lebar;
  47.             tvKeliling.setText(String.valueOf(keliling));
  48.         }
  49.     }
  50.  
  51.     // method untuk menghitung luas
  52.     private void hitungLuas(String sPanjang, String sLebar) {
  53.         boolean status = isEmpty(sPanjang, sLebar);
  54.         if (!status){
  55.             // parsing nilai string ke float untuk panjang dan lebar
  56.             float panjang = Float.parseFloat(sPanjang);
  57.             float lebar = Float.parseFloat(sLebar);
  58.             float luas = panjang * lebar;
  59.             // ambil nilai string dari luas dan diset ke tvLuas
  60.             tvLuas.setText(String.valueOf(luas));
  61.             // mengosongkan isi edittext
  62.             etPanjang.setText("");
  63.             etLebar.setText("");
  64.         }
  65.     }
  66.  
  67.     private boolean isEmpty(String sPanjang, String sLebar) {
  68.         boolean status = false;
  69.         if (TextUtils.isEmpty(sPanjang)) {
  70.             etPanjang.setError("Isi nilai panjang");
  71.             status = true;
  72.         } else if (TextUtils.isEmpty(sLebar)) {
  73.             etLebar.setError("Isi nilai lebar");
  74.             status = true;
  75.         } else {
  76.             status = false;
  77.         }
  78.         return status;
  79.     }
  80. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement