Friday, September 20, 2019

UTS Mobile Programing / September 2019


Deskripsi Project :

Aplikasi toko adalah aplikasi untuk melakukan transaksi jual beli, terdapat 2 form pada aplikasi ini yaitu form login dan form toko.

Cara Kerja :
A. Form Login
     - Masukan username dan password
     - Jika benar akan masuk form toko
     - Jika salah akan muncul peringatan / alert
     - Klik tombol login untuk login
     - Klik tombol keluar untuk keluar dari program
B. Form Toko
     - Pilih salah satu product pada radio buton
     - Otomatis akan keluar harga pada kolom price
     - Masukan qty / jumlah barang
     - Klik tombol hitung untuk menampilkan total harga di kolom total
     - Klik tombol keluar untuk kembali ke form login
  
Tugas UTS mata kuliah Mobile Programing, yaitu membuat sebuah program Android dengan menggunakan Aplikasi Android Studio. Untuk mengetes aplikasi disini saya menggunakan Handphone Android saya "Realme 3 PRO" tentunya dengan mengaktifkan USB Debugging pada Opsi Pengembang terlebih dahulu. Dikarenakan laptop saya yang masih berprocesor AMD A9 sehingga tidak dapat menjalankan emulator android, bawaan dari android studio.

Link Download :
- Android Studio
- Adb Minimal And Fastboot Tools

Berikut adalah langkah-langkah nya :

1. Buatlah Sebuah Project Baru Dengan Nama "UTS_161021450174_AndriWibowo".
gambar 1.0
gambar 1.1
gambar 1.2
2. Membuat Form Login
gambar 2.0
Source Code :
MainActivity.java

package com.example.uts_161021450174_andriwibowo;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
 public class MainActivity extends AppCompatActivity {
    private Button btnlng,btnclose;
    private EditText inuser, inpass;
    //public String username, password;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
         inuser = (EditText) findViewById(R.id.inuser);
        inpass  = (EditText) findViewById(R.id.inpass);
         btnlng = (Button)findViewById(R.id.btnlng);
        btnclose = (Button)findViewById(R.id.btnlng);
        btnlng.setOnClickListener(new View.OnClickListener() {
             @Override
            public void onClick(View view) {
                 if (inuser.getText().toString().equals(“andri”) && inpass.getText().toString().equals(“wibowo”)){
                    Toast.makeText(getApplicationContext(),”Anda Login Sebagai : “+ inuser.getText().toString() + ” dan Password : “+inpass.getText().toString(),Toast.LENGTH_SHORT).show();
                    Intent i = new Intent(MainActivity.this, HasilLogin.class);
                    i.putExtra(“username”,inuser.getText().toString());
                    i.putExtra(“password”,inpass.getText().toString());
                    startActivity(i);
                }
                else {
                    Toast.makeText(getApplicationContext(),”Username dan Password tidak sesuai Anda gagal Login”,Toast.LENGTH_SHORT).show();
                }
            }
        });
  btnclose.setOnClickListener(new View.OnClickListener() {
   @Override
            public void onClick(View view) {
               finish();
         }
       }
    }
}

Source Code :
activity_main.xml

<?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”
    tools:context=”.MainActivity”>

     <TextView
        android:id=”@+id/textView”
        android:layout_width=”259dp”
        android:layout_height=”54dp”
        android:layout_marginEnd=”16dp”
        android:layout_marginRight=”16dp”
        android:layout_marginTop=”32dp”
        android:text=”Selamat Datang Di Toko”
        android:textAppearance=”@style/TextAppearance.AppCompat.Display1″
        app:layout_constraintEnd_toEndOf=”parent”
        app:layout_constraintTop_toTopOf=”parent” />
     <TextView
        android:id=”@+id/user”
        android:layout_width=”wrap_content”
        android:layout_height=”wrap_content”
        android:layout_below=”@+id/logo”
        android:layout_marginLeft=”16dp”
        android:layout_marginStart=”16dp”
        android:layout_marginTop=”108dp”
        android:text=”Username :”
        app:layout_constraintStart_toStartOf=”parent”
        app:layout_constraintTop_toTopOf=”parent” />
     <EditText
        android:id=”@+id/inuser”
        android:singleLine=”true”
        android:layout_width=”359dp”
        android:layout_height=”wrap_content”
        android:layout_below=”@+id/user”
        android:layout_marginTop=”135dp”
        android:hint=””
        app:layout_constraintEnd_toEndOf=”parent”
        app:layout_constraintHorizontal_bias=”0.52″
        app:layout_constraintStart_toStartOf=”parent”
        app:layout_constraintTop_toTopOf=”parent” />
     <TextView
        android:id=”@+id/pass”
        android:layout_width=”wrap_content”
        android:layout_height=”wrap_content”
        android:layout_below=”@+id/inuser”
        android:layout_marginLeft=”16dp”
        android:layout_marginStart=”16dp”
        android:layout_marginTop=”208dp”
        android:hint=”Password :”
        android:inputType=”textPassword”
        app:layout_constraintStart_toStartOf=”parent”
        app:layout_constraintTop_toTopOf=”parent”
         />
     <EditText
        android:id=”@+id/inpass”
        android:singleLine=”true”
        android:layout_width=”359dp”
        android:layout_height=”wrap_content”
        android:layout_below=”@+id/pass”
        android:layout_marginTop=”235dp”
        android:hint=””
        app:layout_constraintEnd_toEndOf=”parent”
        app:layout_constraintHorizontal_bias=”0.52″
        app:layout_constraintStart_toStartOf=”parent”
        app:layout_constraintTop_toTopOf=”parent” />
     <Button
        android:id=”@+id/btnlng”
        android:layout_width=”match_parent”
        android:layout_height=”wrap_content”
        android:layout_below=”@+id/inpass”
        android:layout_centerHorizontal=”true”
        android:hint=”Login”
        android:textColorHint=”#000000″
        android:onClick=”pindah”
        app:layout_constraintBottom_toBottomOf=”parent”
        app:layout_constraintStart_toStartOf=”parent”
        app:layout_constraintTop_toTopOf=”parent”
        app:layout_constraintVertical_bias=”0.699″
        android:background=”@drawable/drawable”/>
     <Button
        android:id=”@+id/btnclose”
        android:layout_width=”match_parent”
        android:layout_height=”wrap_content”
        android:layout_below=”@+id/inclose”
        android:layout_centerHorizontal=”true”
        android:hint=”close”
        android:textColorHint=”#000000″
        android:onClick=”close”
        app:layout_constraintBottom_toBottomOf=”parent”
        app:layout_constraintStart_toStartOf=”parent”
        app:layout_constraintTop_toTopOf=”parent”
        app:layout_constraintVertical_bias=”0.699″
        android:background=”@drawable/drawable”/>

 </android.support.constraint.ConstraintLayout>
gambar 2.1
3.  Membuat Form HasilLogin
gambar 3.0
Source Code :
HasilLogin.xml

<?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”
    tools:context=”.HasilLogin”>
     <TextView
        android:id=”@+id/textView2″
        android:layout_width=”wrap_content”
        android:layout_height=”wrap_content”
        android:text=”Username :”
        android:layout_centerHorizontal=”true”
        android:layout_marginTop=”106dp”
        android:layout_marginLeft=”30dp”
        app:layout_constraintStart_toStartOf=”parent”
        app:layout_constraintTop_toTopOf=”parent”/>
     <TextView
        android:id=”@+id/txthasiluser”
        android:layout_width=”wrap_content”
        android:layout_height=”wrap_content”
        android:text=”Username”
        android:layout_centerHorizontal=”true”
        android:layout_marginTop=”106dp”
        android:layout_marginLeft=”130dp”
        app:layout_constraintStart_toStartOf=”parent”
        app:layout_constraintTop_toTopOf=”parent”/>
     <TextView
        android:id=”@+id/textView4″
        android:layout_width=”wrap_content”
        android:layout_height=”wrap_content”
        android:text=”Password :”
        android:layout_centerHorizontal=”true”
        android:layout_marginTop=”156dp”
        android:layout_marginLeft=”30dp”
        app:layout_constraintStart_toStartOf=”parent”
        app:layout_constraintTop_toTopOf=”parent”/>
     <TextView
        android:id=”@+id/txthasilpass”
        android:layout_width=”wrap_content”
        android:layout_height=”wrap_content”
        android:text=”TextView”
        android:layout_centerHorizontal=”true”
        android:layout_marginTop=”156dp”
        android:layout_marginLeft=”130dp”
        app:layout_constraintStart_toStartOf=”parent”
        app:layout_constraintTop_toTopOf=”parent”/>
     <TextView
        android:id=”@+id/textView6″
        android:layout_width=”wrap_content”
        android:layout_height=”wrap_content”
        android:layout_marginTop=”16dp”
        android:text=”Anda Login Sebagai”
        android:textAppearance=”@style/TextAppearance.AppCompat.Display1″
        app:layout_constraintEnd_toEndOf=”parent”
        app:layout_constraintStart_toStartOf=”parent”
        app:layout_constraintTop_toTopOf=”parent” />
     <Button
        android:id=”@+id/btnclosew”
        android:layout_width=”wrap_content”
        android:layout_height=”wrap_content”
        android:text=”Close”
        android:layout_centerHorizontal=”true”
        android:layout_marginTop=”206dp”
        android:layout_marginLeft=”30dp”
        app:layout_constraintStart_toStartOf=”parent”
        app:layout_constraintTop_toTopOf=”parent”
        android:background=”@drawable/drawable”/>
 </android.support.constraint.ConstraintLayout>

Source Code :
HasilLogin.java

import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.widget.EditText;
import android.widget.Button;
import android.widget.TextView;
 public class HasilLogin extends AppCompatActivity implements View.OnClickListener {
     private TextView txtUsername,txtPassword;
    private Button keluar;
     @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_hasil_login);
         txtUsername = (TextView)findViewById(R.id.txthasiluser);
        txtPassword = (TextView)findViewById(R.id.txthasilpass);
         Intent i = getIntent();
        String txthasiluser = i.getStringExtra(“username”);
        String txthasilpass = i.getStringExtra(“password”);
         txtUsername.setText(txthasiluser.toString());
        txtPassword.setText(txthasilpass.toString());
         keluar = (Button) findViewById(R.id.btnExit);
        keluar.setOnClickListener(this);
    }
     public void onClick(View clicked) {
        switch (clicked.getId()) {
            case R.id.btnExit:
                exit();
                break;
        }
        }
     public boolean onKeyDown(int keyCode, KeyEvent event) {
        //jika tombol BACK ditekan
        if(keyCode == KeyEvent.KEYCODE_BACK){
            exit();
        }
        return super.onKeyDown(keyCode,event );
    }
    private void exit() {
        AlertDialog.Builder builder = new AlertDialog.Builder(this)
                .setMessage(“Apakah Kamu Benar-Benar ingin keluar?”)
                .setNegativeButton(“Tidak”, new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        dialog.dismiss();
                    }
                })
                .setPositiveButton(“Ya”, new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        dialog.dismiss();
                        finish();
                    }
                });
        AlertDialog dialog = builder.create();
        dialog.show();
    }
}

Source Code :
toko.java

Berikut tokomusilm.java:
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.Toast;
public class VianiActivity extends Activity implements android.widget.RadioGroup.OnCheckedChangeListener {
        RadioButton button1;
        RadioButton button2;
        RadioButton button3;
        RadioGroup radioGroup;
        Button hitung;
        Button close;
        EditText z;
        EditText Banyaak;
        EditText total;
@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_Tokomuslim);
    button1=(RadioButton) findViewById(R.id.radio0);
    button2=(RadioButton) findViewById(R.id.radio1);
    button3=(RadioButton) findViewById(R.id.radio2);
    radioGroup=(RadioGroup) findViewById(R.id.radioGroup1);
    radioGroup.setOnCheckedChangeListener(this);
    z=(EditText) findViewById(R.id.text1);
    Qty=(EditText) findViewById(R.id.qty);
    total=(EditText) findViewById(R.id.jumlah);
    hitung = (Button) findViewById(R.id.b1);
    hitung.setOnClickListener(new View.OnClickListener() {
@Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            int h=Integer.parseInt(Banyaak.getText().toString());
            int j=Integer.parseInt(z.getText().toString());
            int totall=h*j;
            total.setText(“”+totall);
        }   
        });
    close = (Button) findViewById(R.id.b1);
    close.setOnClickListener(new View.OnClickListener() {
@Override
        public void onClick(View arg0) {
            finish();
        }   
        });
    }
@Override
    public void onCheckedChanged(RadioGroup arg0, int CheckId) {
        // TODO Auto-generated method stub
         if(button1.isChecked()){           
             Toast.makeText(this, “Baju Koko”, Toast.LENGTH_SHORT).show();
             z.setText(“150000”);
             }else if (button2.isChecked()){          
             Toast.makeText(this, “Gamis”, Toast.LENGTH_SHORT).show();
             z.setText(“200000”);
             }else{
             Toast.makeText(this, “Peci”, Toast.LENGTH_SHORT).show();
             z.setText(“125000”);   
             }
       }
   }
gambar 3.1

Dari hasil program diatas apabila kitas memilih salah satu radio button maka akan langsung muncul harga dari masing masing product barang yang kita pilih, lalu masih masukan Qty / Jumlah barang yang ingin kita beli dan tekan Hitung untuk mengetahui total harga. Untuk close klik tombol keluar.

0 comments

Post a Comment