Membuat aplikasi Login dan Listview di android studio


MEMBUAT APLIKASI LOGIN DAN LIST VIEW DI ANDROID STUDIO

Nama : Tommy Hardiansyah Koswara
NIM : 161021450554
Kelas : 06TPLE003

Assalamualaikum wr .wb
Saya akan menjelaskan cara membuat aplikasi login dan list view di android studio. Langkah pertamanya yaitu membuka android studio, setelah itu klik new project> empty activity> dan beri nama di projectnya.

Disini saya membuat 3 aplikasi:
-Aplikasi pesan kue
-Aplikasi Luas Segitiga
-Laptop

Setelah dikasih nama projectnya barulah kita masukin source codenya dan berikut source codenya dibawah ini:

Untuk source code Activity Login seperti dibawah ini:
package com.example.codinglogin;

import
androidx.appcompat.app.AppCompatActivity;

import
android.app.AlertDialog;
import
android.content.Intent;
import
android.os.Bundle;
import
android.view.View;
import
android.widget.Button;
import
android.widget.EditText;
import
android.widget.Toast;

public class
MainActivity extends AppCompatActivity {

    EditText
username, password;
   
Button btnLogin;

   
@Override
   
protected void onCreate(Bundle savedInstanceState) {
       
super.onCreate(savedInstanceState);
       
setContentView(R.layout.activity_main);

       
username = (EditText) findViewById(R.id.username);
       
password = (EditText) findViewById(R.id.password);
       
btnLogin = (Button)findViewById(R.id.btnLogin);

       
btnLogin.setOnClickListener(new View.OnClickListener() {
           
@Override
           
public void onClick(View v) {

                String usernameKey =
username.getText().toString();
               
String passwordKey = password.getText().toString();

                if
(usernameKey.equals("admin") && passwordKey.equals("123")){
                   
//jika login berhasil
                   
Toast.makeText(getApplicationContext(), "LOGIN SUKSES",
                           
Toast.LENGTH_SHORT).show();
                   
Intent intent = new Intent(MainActivity.this, ListActivity.class);
                   
MainActivity.this.startActivity(intent);
                   
finish();
               
}else {
                   
//jika login gagal
                    
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                   
builder.setMessage("Username atau Password Anda salah!")
                            .setNegativeButton(
"Retry", null).create().show();
               
}
            }

        })
;

   
}
}

Selanjutnya masukan source code xmlnya untuk mendesain aplikasi loginnya:
<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:layout_margin="32dp"

    >



    <TextView

        android:text="Login Form"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:layout_alignParentTop="true"

        android:layout_centerHorizontal="true"

        android:id="@+id/textView"

        android:textAlignment="center"

        android:textSize="30sp"

        android:textStyle="normal|bold" />



    <EditText

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:inputType="textPersonName"

        android:ems="10"

        android:id="@+id/username"

        android:hint="Username"

        android:layout_below="@+id/textView"

        android:layout_alignParentLeft="true"

        android:layout_alignParentStart="true"

        android:layout_marginTop="37dp" />



    <EditText

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:inputType="textPassword"

        android:ems="10"

        android:layout_below="@+id/username"

        android:layout_alignParentLeft="true"

        android:id="@+id/password"

        android:layout_alignParentRight="true"

        android:layout_alignParentEnd="true"

        android:hint="Password" />



    <Button

        android:text="Log In"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:layout_below="@+id/password"

        android:layout_centerHorizontal="true"

        android:id="@+id/btnLogin" />



</RelativeLayout>

package com.example.codinglogin;



import androidx.appcompat.app.AppCompatActivity;



import android.os.Bundle;

import android.view.View;

import android.widget.Button;



public class Welcome extends AppCompatActivity {



    Button btnExit;



    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_welcome);



        btnExit = (Button) findViewById(R.id.btnExit);



        btnExit.setOnClickListener(new View.OnClickListener() {

            @Override

            public void onClick(View v) {

                //perintah untuk mengakhiri aplikasi

                finish();

            }

        });

    }

}

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"

    android:id="@+id/activity_welcome"

    android:layout_width="match_parent"

    android:layout_height="match_parent">



    <TextView

        android:text="Welcome"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:layout_alignParentTop="true"

        android:layout_centerHorizontal="true"

        android:id="@+id/textView2"

        android:textAlignment="center"

        android:textSize="30sp"

        android:textStyle="normal|bold" />



    <TextView

        android:text="Hai Bro!"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:layout_below="@+id/textView2"

        android:layout_centerHorizontal="true"

        android:layout_marginTop="69dp"

        android:id="@+id/textView3"

        android:textSize="18sp"

        android:textStyle="normal|bold" />



    <TextView

        android:text="Selamat datang, kamu telah berhasil login ke aplikasi sederhana ini."

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:id="@+id/textView4"

        android:layout_below="@+id/textView3"

        android:layout_alignParentLeft="true"

        android:layout_alignParentStart="true"

        android:layout_marginTop="10dp"

        android:textSize="18sp" />



    <Button

        android:text="Keluar"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:layout_alignParentBottom="true"

        android:layout_centerHorizontal="true"

        android:id="@+id/btnExit" />

</RelativeLayout>

Selanjutnya kita akan membuat List viewnya, dan berikut source codenya:

Untuk Activitynya:
package com.example.codinglogin;



import androidx.appcompat.app.AppCompatActivity;



import android.content.Intent;

import android.os.Bundle;

import android.view.View;

import android.widget.AdapterView;

import android.widget.ListView;



import java.util.ArrayList;



public class ListActivity extends AppCompatActivity {



    ListView listView;



    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_list);



        listView = findViewById(R.id.list);



        //data untuk di tampil

        String[] values = new String[] { "Pesan Kue", "Luas Segitiga", "Laptop"};



        // buat list data

        final ArrayList<String> list = new ArrayList<String>();

        for (int i = 0; i < values.length; ++i) {

            list.add(values[i]);

        }





        // masukin data ke adapter

        final Adapter adapter = new Adapter(this,

                android.R.layout.simple_list_item_1, list);

        listView.setAdapter(adapter);





        //set action listview

        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @Override

            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {



                //nentuin targer action

                Intent intent;

                if (position == 0) {

                    intent = new Intent(ListActivity.this, PesanKueActivity.class);

                } else if (position == 1) {

                    intent = new Intent(ListActivity.this, LuasSegitigaActivity.class);

                } else {

                    intent = new Intent(ListActivity.this, LaptopActivity.class);

                }

                startActivity(intent);



            }

        });



    }

}

Untuk xmlnya:
<?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"

    tools:context=".ListActivity">



    <ListView

        android:id="@+id/list"

        android:layout_width="match_parent"

        android:layout_height="match_parent"/>



</androidx.constraintlayout.widget.ConstraintLayout>

Selanjutnya kita akan membuat aplikasi pesan kue, dan berikut source codenya:
Untuk Activitynya:
package com.example.codinglogin;



import android.os.Bundle;

import android.util.Log;

import android.view.View;

import android.widget.CheckBox;

import android.widget.EditText;

import android.widget.TextView;

import android.widget.Toast;



import androidx.appcompat.app.AppCompatActivity;



import java.text.NumberFormat;





/**

 * This app displays an order form to order coffee.

 */

public class PesanKueActivity extends AppCompatActivity {



    int quantity=0;

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_pesankue);

    }





    public void increment(View view){//perintah tombol tambah

        if(quantity==100){

            Toast.makeText(this,"pesanan maximal 100",Toast.LENGTH_SHORT).show();

            return;

        }

        quantity = quantity+1 ;

        display(quantity);

    }

    public void decrement(View view){//perintah tombol tambah

        if (quantity==1){

            Toast.makeText(this,"pesanan minimal 1",Toast.LENGTH_SHORT).show();

            return;

        }

        quantity = quantity -1;

        display(quantity);

    }





    public void Submitorder(View view) {

        EditText nameEditText=(EditText)findViewById(R.id.edt_name);

        String name=nameEditText.getText().toString();

        Log.v("MainActivity","Nama:"+name);



        CheckBox whippedcreamChekBox= (CheckBox) findViewById(R.id.WhippedCream_checkbox);

        boolean haswhippedcream=whippedcreamChekBox.isChecked();//mengidentifikasi check

        Log.v("MainActivity","has whippedcream:"+haswhippedcream);



        CheckBox chocolateChekBox= (CheckBox) findViewById(R.id.Chocolate_checkbox);

        boolean haschocolate=chocolateChekBox.isChecked();//mengidentifikasi check

        Log.v("MainActivity","has whippedcream:"+haschocolate);



        int price=calculateprice(haswhippedcream,haschocolate);//memanggil method jumlah harga

        String pricemessage=createOrderSummary(price,name,haswhippedcream,haschocolate);





        displayMessage(pricemessage);



    }

    private int calculateprice(boolean addChoclate,boolean addKeju){//jumlah pesanan * harga

        int harga=10000;



        if(addChoclate){

            harga=harga+1000;//harga tambahan toping

        }



        if (addKeju){

            harga=harga+5000;

        }



        return quantity * harga;

    }

    private String createOrderSummary(int price, String name, boolean addKeju, boolean addChoclate) {//hasil pemesanan

        String pricemessage=" Nama = "+name;

        pricemessage+="\n Tambahkan Coklat =" +addChoclate;

        pricemessage+="\n Tambahkan Keju =" +addKeju;

        pricemessage+="\n Jumlah Pemesanan =" +quantity;

        pricemessage+="\n Total = Rp " +price;

        pricemessage+="\n Terimakasih";

        return  pricemessage;

    }



    //method ini untuk mencetak hasil perintah yang di tampilkan dengan inisial quantity_textview di textview 0

    private void displayMessage(String message) {

        TextView priceTextView = (TextView) findViewById(R.id.price_textview);

        priceTextView.setText(message);

    }

    private void display(int number) {

        TextView quantityTextView = (TextView) findViewById(R.id.quantity_textview);

        quantityTextView.setText("" + number);

    }

    private void displayPrice(int number) {

        TextView priceTextView = (TextView) findViewById(R.id.price_textview);

        priceTextView.setText(NumberFormat.getCurrencyInstance().format(number));

    }



}

Untuk Xmlnya:
<?xml version="1.0" encoding="utf-8"?>

<ScrollView android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    xmlns:android="http://schemas.android.com/apk/res/android">

    <LinearLayout 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:orientation="vertical"

        android:padding="30dp"

        tools:context=".MainActivity">

        <EditText

            android:layout_width="match_parent"

            android:layout_height="match_parent"

            android:hint="Masukan nama anda ...."

            android:id="@+id/edt_name"

            android:inputType="text"/>

        <TextView

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="Tambahkan Topping"

            android:textSize="25dp"/>

        <CheckBox

            android:id="@+id/WhippedCream_checkbox"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="Coklat"

            android:paddingLeft="16dp"

            android:textSize="15sp"/>

        <CheckBox

            android:id="@+id/Chocolate_checkbox"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="Keju"

            android:paddingLeft="16dp"

            android:textSize="15sp"/>



        <View

            android:layout_marginTop="10dp"

            android:layout_width="match_parent"

            android:layout_height="2dp"

            android:background="@color/colorAccent"/>







        <TextView

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="jumlah"

            android:textSize="25dp"

            android:textAllCaps="true"

            android:layout_marginBottom="16dp"

            app:layout_constraintBottom_toBottomOf="parent"

            app:layout_constraintLeft_toLeftOf="parent"

            app:layout_constraintRight_toRightOf="parent"

            app:layout_constraintTop_toTopOf="parent" />

        <LinearLayout

            android:layout_width="match_parent"

            android:layout_height="wrap_content"

            android:orientation="horizontal">

            <Button

                android:layout_width="48dp"

                android:onClick="increment"

                android:text="+"



                android:layout_height="48dp" />

            <TextView

                android:textColor="#212121"

                android:layout_gravity="center"

                android:layout_width="wrap_content"

                android:layout_height="wrap_content"

                android:text="0"

                android:paddingRight="8dp"

                android:paddingLeft="8dp"

                android:id="@+id/quantity_textview"

                android:textSize="25dp"/>

            <Button

                android:layout_width="48dp"

                android:onClick="decrement"

                android:text="-"

                android:layout_height="48dp" />

        </LinearLayout>



        <View

            android:layout_marginTop="10dp"

            android:layout_width="match_parent"

            android:layout_height="2dp"

            android:background="@color/colorAccent"/>



        <TextView

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="Harga"

            android:textSize="30dp"

            android:textAllCaps="true"

            android:layout_marginBottom="16dp"/>

        <TextView

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="0"

            android:textColor="#212121"

            android:id="@+id/price_textview"

            android:textSize="25dp"/>

        <Button

            android:layout_width="wrap_content"

            android:layout_marginBottom="16dp"

            android:onClick="Submitorder"

            android:layout_height="wrap_content"

            android:text="Pesan Sekarang"/>





    </LinearLayout>

</ScrollView>

Selanjutnya kita akan membuat aplikasi luas segitiga, berikut source codenya:
Untuk Activitnya:
package com.example.codinglogin;



import android.os.Bundle;

import android.view.View;

import android.widget.Button;

import android.widget.EditText;

import android.widget.TextView;

import android.widget.Toast;



import androidx.appcompat.app.AppCompatActivity;



public class LuasSegitigaActivity extends AppCompatActivity {

    EditText a,t;

    Button hitung;

    TextView hasil;

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_luas_segitiga);

        a = (EditText)findViewById(R.id.alas);

        t = (EditText)findViewById(R.id.tinggi);

        hitung = (Button) findViewById(R.id.button);

        hasil = (TextView)findViewById(R.id.txt_hasil);

        hitung.setOnClickListener(new View.OnClickListener(){



            @Override

            public void onClick(View v){

                //jika tidak mengisi panjang dan lebar sekaligus maka akan tampil notifikasi

                if(a.length()==0 && t.length()==0){

                    Toast.makeText(getApplication(),"Alas dan Tinggi tidak boleh Kosong",Toast.LENGTH_LONG).show();

                }

                //notifikasi ini akan muncul jika panjangnya tidak diisi

                else if (a.length()==0){

                    Toast.makeText(getApplication(),"Alas tidak boleh kososng", Toast.LENGTH_LONG).show();

                }

                //notifikasi jika lebar tidak diisi

                else if (t.length()==0){

                    Toast.makeText(getApplication(),"Tinggi tidak boleh kosong",Toast.LENGTH_LONG).show();

                }

                else{

                    String isialas = a.getText().toString();

                    String isitinggi = t.getText().toString();

                    double a = Double.parseDouble(isialas);

                    double t = Double.parseDouble(isitinggi);

                    double hs = LuasSegitiga(a,t);

                    String output = String.valueOf(hs);

                    hasil.setText(output.toString());

                }

            }

        });

    }

    public double LuasSegitiga(double a, double t){return a*t/2;}

}

Untuk Xml:
<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"

    android:id="@+id/activity_main"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    >



    <TextView

        android:text="Luas Segitiga"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentTop="true"

        android:layout_centerHorizontal="true"

        android:layout_marginTop="23dp"

        android:id="@+id/txt_judul"

        android:textColor="@android:color/holo_blue_light"

        android:textSize="18sp" />



    <TextView

        android:text="Rumus = 1/2 X a X t"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_marginTop="20dp"

        android:id="@+id/txt_rumus"

        android:layout_below="@+id/txt_judul"

        android:layout_alignLeft="@+id/txt_alas"

        android:layout_alignStart="@+id/txt_alas"

        android:textColor="@android:color/background_dark" />



    <TextView

        android:text="Alas"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_marginLeft="14dp"

        android:layout_marginStart="14dp"

        android:id="@+id/txt_alas"

        android:layout_alignBaseline="@+id/alas"

        android:layout_alignBottom="@+id/alas"

        android:layout_alignParentLeft="true"

        android:layout_alignParentStart="true"

        android:textColor="@android:color/holo_blue_light" />



    <TextView

        android:text="Tinggi"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:id="@+id/txt_tinggi"

        android:layout_alignBaseline="@+id/tinggi"

        android:layout_alignBottom="@+id/tinggi"

        android:layout_alignLeft="@+id/txt_alas"

        android:layout_alignStart="@+id/txt_alas"

        android:textColor="@android:color/holo_blue_light" />



    <EditText

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:inputType="textPersonName"

        android:hint="Masukkan Alas"

        android:ems="10"

        android:layout_below="@+id/txt_rumus"

        android:layout_alignParentRight="true"

        android:layout_alignParentEnd="true"

        android:layout_marginRight="22dp"

        android:layout_marginEnd="22dp"

        android:layout_marginTop="22dp"

        android:id="@+id/alas" />



    <EditText

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:inputType="textPersonName"

        android:hint="Massukkan Tinggi"

        android:ems="10"

        android:layout_below="@+id/alas"

        android:layout_alignLeft="@+id/alas"

        android:layout_alignStart="@+id/alas"

        android:layout_marginTop="10dp"

        android:id="@+id/tinggi" />



    <Button

        android:text="HITUNG"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_below="@+id/tinggi"

        android:layout_centerHorizontal="true"

        android:layout_marginTop="35dp"

        android:id="@+id/button" />



    <TextView



        android:text="Luas Segitiga Adalah :"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:layout_marginTop="59dp"

        android:id="@+id/txt_hasil"

        android:layout_below="@+id/button"

        android:textColor="@android:color/holo_red_dark"

        android:layout_alignParentLeft="true"

        android:layout_alignParentStart="true"

        android:textAlignment="center"

        android:textSize="18sp" />



</RelativeLayout>

Selanjutnya yang terakhir kita bikin aplikasi laptop dan berikut source codenya:
Untuk Activitynya:
package com.example.codinglogin;



import androidx.appcompat.app.AppCompatActivity;



import android.os.Bundle;



public class LaptopActivity extends AppCompatActivity {



    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_screen3);

    }

}

Untuk Xmlnya:
<?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"

    tools:context=".LaptopActivity">



    <TextView

        android:text="Laptop adalah komputer bergerak (bisa dipindahkan dengan mudah) yang berukuran relatif kecil dan ringan, beratnya berkisar dari 1-6 kg, tergantung ukuran, bahan, dari spesifikasi laptop tersebut, laptop dapat digunakan dalam lingkungan yang berbeda dari komputer."

        android:layout_width="match_parent"

        android:layout_height="match_parent"

        android:gravity="center"

        android:textSize="30dp"/>



</androidx.constraintlayout.widget.ConstraintLayout>
Dan hasilnya seperti gambar dibawah ini:

 



 


 


Sekian dari blog saya terima kasih.

Komentar

Postingan populer dari blog ini

Normalisasi Database

UAS otomata moore machine