KUMPULAN APLIKASI DENGAN LIST VIEW
A. DESKRIPSI :
Aplikasi android ini memiliki beberapa program didalamnya antara lain, konversi mata uang dan keliling lingkaran. Pada tampilan awal akan dimintakan username dan password untuk login ke dalam aplikasi yang ada didalamnya. Pada halaman menu / list view ada option menu dipojok kanan atas yang terdapat didalamnya menu about, home, dan exit. Di setiap aplikasi juga ditambah option menu untuk mempermudah pengguna.
B. BUAT PROJECT BARU :
1. Membuat Aplikasi Konversi Mata Uang
Untuk membuat aplikasi ini kita buat projeck baru dengan :
Nama Projeck : konversimatauang
Phone : PIXEL 2 API 16
Activity : Empty Activity
Activity Name : MainActivityJika workspace android studio sudah siap digunakan, kita masuk ke tab activity_main.xml lalu kita ubah desainnya hingga seperti ini :
Untuk membuat desain Xml seperti diatas, Berikut ini adalah source code xml nya :
<?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.ConstraintLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"xmlns:app="http://schemas.android.com/apk/res-auto"android:layout_width="match_parent"android:layout_height="match_parent"tools:context="com.example.konversimatauang.MainActivity"><ImageViewandroid:id="@+id/imageView"android:layout_width="122dp"android:layout_height="116dp"android:layout_marginStart="141dp"android:layout_marginLeft="141dp"android:layout_marginTop="82dp"android:layout_marginEnd="142dp"android:layout_marginRight="142dp"android:layout_marginBottom="42dp"android:background="#0E59F1"app:layout_constraintBottom_toTopOf="@+id/linearLayout"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toTopOf="parent"app:srcCompat="@mipmap/ic_launcher" /><LinearLayoutandroid:id="@+id/linearLayout"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginStart="56dp"android:layout_marginLeft="56dp"android:layout_marginTop="43dp"android:layout_marginEnd="57dp"android:layout_marginRight="57dp"android:layout_marginBottom="36dp"android:orientation="horizontal"android:padding="20dp"app:layout_constraintBottom_toTopOf="@+id/button"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toBottomOf="@+id/imageView"><EditTextandroid:id="@+id/editText"android:layout_width="120dp"android:layout_height="wrap_content"android:layout_weight="1"android:ems="10"android:hint="0 Rupiah"android:inputType="textPersonName"android:textSize="20sp" /><TextViewandroid:id="@+id/textView"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_margin="5dp"android:layout_weight="1"android:text="="android:textSize="20sp" /><TextViewandroid:id="@+id/textView2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:hint="Hasil Konversi"android:textSize="20sp" /></LinearLayout><Buttonandroid:id="@+id/button"android:layout_width="270dp"android:layout_height="wrap_content"android:layout_marginStart="161dp"android:layout_marginLeft="161dp"android:layout_marginTop="10dp"android:layout_marginEnd="162dp"android:layout_marginRight="162dp"android:layout_marginBottom="20dp"android:background="#F50000"android:onClick="toUSD"android:text="Rp > USD"android:textColor="#FFFDFD"android:textSize="20sp"app:layout_constraintBottom_toTopOf="@+id/button2"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toBottomOf="@+id/linearLayout" /><Buttonandroid:id="@+id/button2"android:layout_width="270dp"android:layout_height="wrap_content"android:layout_marginStart="161dp"android:layout_marginLeft="161dp"android:layout_marginTop="10dp"android:layout_marginEnd="162dp"android:layout_marginRight="162dp"android:layout_marginBottom="20dp"android:background="#B19502"android:onClick="toYEN"android:text="Rp > YEN"android:textColor="#FFFFFF"android:textSize="20sp"app:layout_constraintBottom_toTopOf="@+id/button3"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toBottomOf="@+id/button" /><Buttonandroid:id="@+id/button3"android:layout_width="270dp"android:layout_height="wrap_content"android:layout_marginStart="70dp"android:layout_marginLeft="70dp"android:layout_marginTop="10dp"android:layout_marginEnd="71dp"android:layout_marginRight="71dp"android:layout_marginBottom="184dp"android:background="#11A806"android:onClick="toEURO"android:text="Rp > EURO"android:textColor="#FFFCFC"android:textSize="20sp"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintHorizontal_bias="1.0"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toBottomOf="@+id/button2" /><Buttonandroid:id="@+id/button7"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginStart="65dp"android:layout_marginLeft="65dp"android:layout_marginTop="75dp"android:layout_marginEnd="258dp"android:layout_marginRight="258dp"android:layout_marginBottom="46dp"android:text="Logout"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toBottomOf="@+id/button3" /><Buttonandroid:id="@+id/button8"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginStart="162dp"android:layout_marginLeft="162dp"android:layout_marginTop="12dp"android:layout_marginEnd="161dp"android:layout_marginRight="161dp"android:layout_marginBottom="109dp"android:text="Reset"android:textSize="20sp"android:textStyle="bold|italic"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toBottomOf="@+id/button3" /><TextViewandroid:id="@+id/textView5"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginStart="82dp"android:layout_marginLeft="82dp"android:layout_marginTop="16dp"android:layout_marginEnd="82dp"android:layout_marginRight="82dp"android:layout_marginBottom="35dp"android:text="Ferdian Putra Dinanda - 161021450161"app:layout_constraintBottom_toTopOf="@+id/imageView"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toTopOf="parent" /></androidx.constraintlayout.widget.ConstraintLayout>
Setelah sudah selesai memasukkan source code xml diatas akan dihasilkan gambar pada Emulator seperti ini :
Kemudian untuk membuat button dan editText dapat berfungsi kita masuk ke Tab MainActivity.java lalu masukan source code sebagai berikut :
package com.example.konversimatauang;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;import java.text.NumberFormat;import java.util.Locale;public class MainActivity extends AppCompatActivity {EditText editText;Button button, button2, button3, btnExit, btnReset;TextView textView2;double angka;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);editText = (EditText) findViewById(R.id.editText);button = (Button) findViewById(R.id.button);button2 = (Button) findViewById(R.id.button2);button3 = (Button) findViewById(R.id.button3);textView2 = (TextView) findViewById(R.id.textView2);btnExit = (Button) findViewById(R.id.button7);btnExit.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {finish();}});btnReset = (Button) findViewById(R.id.button8);btnReset.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {textView2.setText("");editText.setText("");}});}public boolean cek(){if (editText.getText().toString().isEmpty()){Toast.makeText(this, "Silahkan masukan jumlah uang", Toast.LENGTH_SHORT).show();return false;}return true;}public void toYEN(View v){if (!cek()){return;}try{angka = Double.parseDouble(editText.getText().toString());}catch(Exception ex){Toast.makeText(this, "Masukkan angka", Toast.LENGTH_SHORT).show();}double hasil = angka / 132;textView2.setText(NumberFormat.getCurrencyInstance(Locale.JAPAN).format(hasil));Toast.makeText(this, "1 Yen = Rp 131", Toast.LENGTH_SHORT).show();}public void toEURO(View v){if (!cek()){return;}try{angka = Double.parseDouble(editText.getText().toString());}catch(Exception e){Toast.makeText(this, "Masukkan angka", Toast.LENGTH_SHORT).show();}double hasil = angka / 17228;textView2.setText(NumberFormat.getCurrencyInstance(Locale.GERMANY).format(hasil));Toast.makeText(this, "1 Euro = Rp 15.450", Toast.LENGTH_SHORT).show();}public void toUSD(View v){if (!cek()){return;}try{angka = Double.parseDouble(editText.getText().toString());}catch(Exception e){Toast.makeText(this, "Masukkan angka", Toast.LENGTH_SHORT).show();}double hasil = angka / 14808;textView2.setText(NumberFormat.getCurrencyInstance(Locale.US).format(hasil));Toast.makeText(this, "1 U$D = Rp 14087", Toast.LENGTH_SHORT).show();}}
Jika sudah memasukkan source code seperti diatas kita dapat menguji aplikasi konversi mata uang yang sudah kita buat. Hasilnya akan seperti berikut :
2. Membuat Aplikasi Keliling Lingkaran
Pada aplikasi ini kita dapat mengetahui keliling dari lingkaran dengan memasukkan jari-jari dari lingkaran tersebut.
Untuk membuat tampilan awalnya kita buat dengan source code sebagai berikut :
<?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=".KelilingLingkaran">
<TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginStart="110dp" android:layout_marginTop="31dp" android:layout_marginEnd="110dp" android:text="Keliling Lingkaran" android:textAlignment="center" android:textAppearance="?android:attr/textAppearanceLarge" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" />
<EditText android:id="@+id/ekeliling" android:layout_width="211dp" android:layout_height="42dp" android:layout_alignBaseline="@+id/textView2" android:layout_alignBottom="@+id/textView2" android:layout_marginStart="50dp" android:layout_marginLeft="50dp" android:layout_marginTop="42dp" android:layout_toRightOf="@+id/textView2" android:ems="10" android:textSize="16sp" app:layout_constraintStart_toEndOf="@+id/textView4" app:layout_constraintTop_toBottomOf="@+id/eluas">
<requestFocus />
</EditText>
<TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/textView1" android:layout_alignLeft="@+id/textView1" android:layout_marginStart="16dp" android:layout_marginLeft="16dp" android:layout_marginTop="96dp" android:text="Jari-jari" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" />
<Button android:id="@+id/btnhapus" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBaseline="@+id/btnproses" android:layout_alignBottom="@+id/btnproses" android:layout_marginStart="100dp" android:layout_marginLeft="100dp" android:layout_marginTop="40dp" android:layout_toRightOf="@+id/textView1" android:onClick="myClickHandler" android:text="Hapus" app:layout_constraintStart_toEndOf="@+id/btnproses" app:layout_constraintTop_toBottomOf="@+id/ejari" />
<TextView android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBaseline="@+id/eluas" android:layout_alignLeft="@+id/textView2" android:layout_alignBottom="@+id/eluas" android:layout_marginStart="32dp" android:layout_marginLeft="32dp" android:layout_marginTop="168dp" android:text="Luas" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/textView2" />
<TextView android:id="@+id/textView4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBaseline="@+id/ejari" android:layout_alignRight="@+id/textView3" android:layout_alignBottom="@+id/ejari" android:layout_marginStart="24dp" android:layout_marginLeft="24dp" android:layout_marginTop="72dp" android:text="Keliling" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/textView3" />
<Button android:id="@+id/btnproses" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/ekeliling" android:layout_alignLeft="@+id/ekeliling" android:layout_marginStart="80dp" android:layout_marginLeft="80dp" android:layout_marginTop="40dp" android:onClick="myClickHandler" android:text="Proses" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/ejari" />
<EditText android:id="@+id/eluas" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/btnproses" android:layout_centerVertical="true" android:layout_marginStart="55dp" android:layout_marginLeft="55dp" android:layout_marginTop="54dp" android:ems="10" app:layout_constraintStart_toEndOf="@+id/textView3" app:layout_constraintTop_toBottomOf="@+id/btnhapus" />
<EditText android:id="@+id/ejari" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/eluas" android:layout_alignLeft="@+id/eluas" android:layout_marginStart="50dp" android:layout_marginLeft="50dp" android:layout_marginTop="21dp" android:ems="10" app:layout_constraintStart_toEndOf="@+id/textView2" app:layout_constraintTop_toBottomOf="@+id/textView1" />
</androidx.constraintlayout.widget.ConstraintLayout>
Sehingga tampilan dari aplikasi ini akan seperti dibawah :Setelah itu kita masukkan source code untuk aplikasi ini.
package com.example.konversimatauang;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.View;
import android.widget.EditText;
import androidx.appcompat.app.AppCompatActivity;
public class KelilingLingkaran extends AppCompatActivity {
EditText eJari, eLuas, eKeliling;
@Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_keliling_lingkaran);
}
public void myClickHandler(View v){
eJari = (EditText) findViewById(R.id.ejari);
eLuas = (EditText) findViewById(R.id.eluas);
eKeliling = (EditText) findViewById(R.id.ekeliling);
switch (v.getId()){
case R.id.btnproses:
int jari = Integer.parseInt(eJari.getText().toString());
double luas = 3.14 * jari * jari ;
double keliling = 2 * 3.14 ;
eLuas.setText(String.valueOf(luas));
eKeliling.setText(String.valueOf(keliling));
break;
case R.id.btnhapus:
eJari.setText("");
eLuas.setText("");
eKeliling.setText("");
break;
}
}
@Override public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present. MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.optionmenu, menu);
//getMenuInflater().inflate(R.menu.menu_main, menu); return true;
}
public boolean onOptionsItemSelected(android.view.MenuItem item) {
if (item.getItemId() == R.id.about) {
startActivity(new Intent(this, about.class));
} else if (item.getItemId() == R.id.home) {
startActivity(new Intent(this, home.class));
} else if (item.getItemId() == R.id.exit) {
moveTaskToBack(true);
}
return true;
}
}
Setelah selesai memasukkan source code diatas, bisa langsung di coba aplikasinya. berjalan atau tidak.
3. Membuat Aplikasi Login
Selanjutnya kita buat Aplikasi Login untuk dapat menggunakan Aplikasi Konversi Mata Uang yang sudah kita buat. Langkah pertama, Klik Kanan pada Package yang sama dengan Aplikasi Konversi Mata Uang lalu pilih New > Activity > Empty Activity. Beri nama Activity dengan "Login" lalu Next. Jika sudah akan muncul .java dan .xml baru. Selanjutnya kita desain terlebih dahulu tampilan login sesuai keinginan kita. Kalau yang saya buat tampilannya seperti berikut :
source code yang saya buat untuk mendapatkan tampilan seperti diatas sebagai berikut :
Jika sudah mendesain tampilan dari login, kita langsung ke Tab Login.java kemudian masukkan source code seperti berikut :<?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=".Login"><TextViewandroid:id="@+id/textView3"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginTop="20dp"android:layout_marginBottom="643dp"android:text="LOGIN"android:textSize="30sp"android:textStyle="bold"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintHorizontal_bias="0.527"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toTopOf="parent"app:layout_constraintVertical_bias="0.0" /><TextViewandroid:id="@+id/textView4"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginStart="111dp"android:layout_marginLeft="111dp"android:layout_marginTop="60dp"android:layout_marginEnd="88dp"android:layout_marginRight="88dp"android:layout_marginBottom="584dp"android:text="APLIKASI KONVERSI MATA UANG"android:textSize="16sp"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toBottomOf="@+id/textView3" /><ImageViewandroid:id="@+id/imageView2"android:layout_width="102dp"android:layout_height="110dp"android:layout_marginStart="144dp"android:layout_marginLeft="144dp"android:layout_marginTop="25dp"android:layout_marginEnd="139dp"android:layout_marginRight="139dp"android:layout_marginBottom="10dp"app:layout_constraintBottom_toTopOf="@+id/editText2"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toBottomOf="@+id/textView4"app:srcCompat="@mipmap/ic_launcher_round"tools:srcCompat="@mipmap/ic_launcher_round" /><ImageViewandroid:id="@+id/imageView3"android:layout_width="49dp"android:layout_height="46dp"android:layout_marginStart="45dp"android:layout_marginLeft="45dp"android:layout_marginTop="20dp"android:layout_marginEnd="10dp"android:layout_marginRight="10dp"android:layout_marginBottom="260dp"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintEnd_toStartOf="@+id/editText3"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toBottomOf="@+id/imageView4"app:srcCompat="@android:drawable/ic_secure" /><ImageViewandroid:id="@+id/imageView4"android:layout_width="73dp"android:layout_height="68dp"android:layout_marginStart="40dp"android:layout_marginLeft="40dp"android:layout_marginTop="240dp"android:layout_marginEnd="20dp"android:layout_marginRight="20dp"android:layout_marginBottom="30dp"app:layout_constraintBottom_toTopOf="@+id/imageView3"app:layout_constraintEnd_toStartOf="@+id/editText2"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toTopOf="parent"app:layout_constraintVertical_bias="0.49"app:srcCompat="@android:drawable/btn_star_big_on" /><EditTextandroid:id="@+id/editText2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginStart="26dp"android:layout_marginLeft="26dp"android:layout_marginTop="54dp"android:layout_marginEnd="83dp"android:layout_marginRight="83dp"android:layout_marginBottom="42dp"android:ems="10"android:hint="username"android:inputType="textPersonName"app:layout_constraintBottom_toTopOf="@+id/editText3"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintStart_toEndOf="@+id/imageView4"app:layout_constraintTop_toBottomOf="@+id/imageView2" /><EditTextandroid:id="@+id/editText3"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginStart="40dp"android:layout_marginLeft="40dp"android:layout_marginTop="10dp"android:layout_marginEnd="80dp"android:layout_marginRight="80dp"android:layout_marginBottom="260dp"android:ems="10"android:hint="password"android:inputType="textPersonName"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintStart_toEndOf="@+id/imageView3"app:layout_constraintTop_toBottomOf="@+id/editText2" /><Buttonandroid:id="@+id/button4"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginStart="120dp"android:layout_marginLeft="120dp"android:layout_marginTop="34dp"android:layout_marginEnd="203dp"android:layout_marginRight="203dp"android:layout_marginBottom="169dp"android:text="Sign in"android:textSize="20sp"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toBottomOf="@+id/editText3" /></androidx.constraintlayout.widget.ConstraintLayout>
package com.example.konversimatauang;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.EditText;import android.widget.Toast;import androidx.appcompat.app.AlertDialog;import androidx.appcompat.app.AppCompatActivity;public class Login extends AppCompatActivity {EditText username, password;Button btnLogin;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_login);username = (EditText) findViewById(R.id.editText2);password = (EditText) findViewById(R.id.editText3);btnLogin = (Button) findViewById(R.id.button4);btnLogin.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {String usernameKey = username.getText().toString();String passwordKey = password.getText().toString();if (usernameKey.equals("ferdian") && passwordKey.equals("dinanda")){Toast.makeText(getApplicationContext(), "LOGIN SUKSES",Toast.LENGTH_SHORT).show();Intent intent = new Intent(Login.this, MainActivity.class);startActivity(intent);} else {AlertDialog.Builder builder = new AlertDialog.Builder(Login.this);builder.setMessage("username atau password salah").setNegativeButton("Retry", null).create().show();}}});}}
4. Tampilan Home
Untuk membuat tampilan home yang terdiri dari beberapa aplikasi diatas. kita gunakan List View sebagai tempat dari aplikasi yang sudah kita buat.
masukkan soource code terlebih dahulu.
<?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" tools:context=".home" >
<ListView android:id="@+id/listView" android:layout_width="match_parent" android:layout_height="match_parent"/>
</LinearLayout>
Kemudian masukkan source code pada javanya :
package com.example.konversimatauang;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
public class home extends AppCompatActivity {
ListView LV;
String [] Menu = {"Konversi Mata Uang","Keliling Lingkaran"};
Button button;
@Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
LV = (ListView) findViewById(R.id.listView);
ArrayAdapter adapai = new ArrayAdapter(this,android.R.layout.simple_list_item_single_choice,Menu);
LV.setAdapter(adapai);
LV.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override public void onItemClick(AdapterView<?>arg0, View arg1, int itemKe, long arg3) {
String itemText = (String) LV.getItemAtPosition(itemKe);
Toast.makeText(getBaseContext(), "Anda Mengklik " + itemText, Toast.LENGTH_LONG).show();
if(itemText.equalsIgnoreCase("Konversi Mata Uang")){
Intent I = new Intent(arg0.getContext(),MainActivity.class);
startActivityForResult(I,0);
} else if(itemText.equalsIgnoreCase("Keliling Lingkaran")){
Intent I = new Intent(arg0.getContext(),KelilingLingkaran.class);
startActivityForResult(I,0);
}
}
});
}
@Override public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present. MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.optionmenu, menu);
//getMenuInflater().inflate(R.menu.menu_main, menu); return true;
}
public boolean onOptionsItemSelected(android.view.MenuItem item) {
if (item.getItemId() == R.id.about) {
startActivity(new Intent(this, about.class));
} else if (item.getItemId() == R.id.exit) {
moveTaskToBack(true);
}
return true;
}
@Override public void onBackPressed(){
}
}
Setelah selesai memasukkan source code diatas kita akan mendapatkan tampilan seperti ini :Keterangan :
1. Pada login ini saya membuat username "ferdian" dan password "dinanda" untuk dapat masuk ke dalam Aplikasi Konversi Mata Uang.
2. Agar kedua Activity dapat terhubung, perhatikan source code pada Tab Login.java
if (usernameKey.equals("ferdian") && passwordKey.equals("dinanda")){
Toast.makeText(getApplicationContext(), "LOGIN SUKSES",
Toast.LENGTH_SHORT).show();
Intent intent = new Intent(Login.this, MainActivity.class);
startActivity(intent);
source code diatas berfungsi untuk menghubungkan Login dengan Konversi Mata Uang.
Jika sudah memasukkan source code seperti diatas kita dapat menguji pada Emulator yang ada.
Hasil seperti ini :
Jika kita Klik SIGN IN, maka akan langsung masuk ke Aplikasi Konversi Mata Uang dengan tampilan seperti ini :
Demikian pembuatan KumpulanAplikasi dengan Login. Semoga ilmu diatas dapat bermanfaat. Silahkan dicoba untuk desain dan codingan yang sudah saya buat, apabila ada kesulitan tulis saja dikolom komentar. Terima Kasih, Sekian.