NIM : 161021450502
Kelas: 06TPLM003
Assalammu'alaikum, salam sejahtera untuk kita semua. pertemuan kali ini saya telah menyelesaikan sebuah tugas Ujian Akhir Semester(UAS) Mobile Programing. sebuah aplikasi yang terhbung dengan database dan pelu melakukan login sebelum menggunakan aplikasi.
berikut Mock Up Aplikasi yang saya isikan pada Lembar Jawaban UAS :
1. Tampilan Login :
Coding Java :
package com.example.aplikasilogin; 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.AppCompatActivity; 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, Welcome.class); MainActivity.this.startActivity(intent); finish(); } } }); } }
Coding Layout :
<?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"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"tools:context="com.example.aplikasilogin.MainActivity"> <TextViewandroid:text="UJIAN AKHIR SEMESTER"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="25sp"android:textStyle="normal|bold"/> <TextViewandroid:id="@+id/textnim"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_alignParentTop="true"android:layout_marginTop="79dp"android:text="Muhammad Sidiq Jaelani P | 161021450502"android:textAlignment="center"android:textSize="19sp"android:textStyle="normal|bold"/> <EditTextandroid:id="@+id/username"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_below="@+id/textView"android:layout_alignParentStart="true"android:layout_alignParentLeft="true"android:layout_marginStart="1dp"android:layout_marginLeft="1dp"android:layout_marginTop="137dp"android:ems="10"android:hint="Username"android:inputType="textPersonName"/><Buttonandroid:id="@+id/btnLogin"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_below="@+id/password"android:layout_marginTop="0dp"android:text="Log In"/> <EditTextandroid:id="@+id/password"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_below="@+id/username"android:layout_alignParentLeft="true"android:layout_alignParentEnd="true"android:layout_alignParentRight="true"android:layout_marginLeft="12dp"android:layout_marginTop="0dp"android:layout_marginEnd="4dp"android:layout_marginRight="4dp"android:ems="10"android:hint="Password"android:inputType="textPassword"/> </RelativeLayout>
2. Tampilan List View setelah berhasil Login :
Coding Java :
package com.example.aplikasilogin; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.ListView; import android.widget.Toast; import androidx.appcompat.app.AppCompatActivity; public class Welcome extends AppCompatActivity { ListView LV; String [] aplikasi={"Informasi Senjata","Tentang Aplikasi","Tentang Zayn"}; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_welcome); LV = (ListView) findViewById(R.id.listView1); ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, aplikasi); LV.setAdapter(adapter); LV.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { // TODO Auto-generated method stub int itemke = arg2; String itemText = (String) LV.getItemAtPosition(arg2); Toast.makeText(getBaseContext(), "Anda Menyentuh " + itemText, Toast.LENGTH_LONG).show(); if (itemText.equals("Informasi Senjata")) { Intent SeninIntent = new Intent(arg0.getContext(), InfoSenjata.class); startActivityForResult(SeninIntent, 0); } if (itemText.equals("Tentang Aplikasi")) { Intent SeninIntent = new Intent(arg0.getContext(), tentangaplikasi.class); startActivityForResult(SeninIntent, 0); } if (itemText.equals("Tentang Zayn")) { Intent SeninIntent = new Intent(arg0.getContext(), tentangzayn.class); startActivityForResult(SeninIntent, 0); } } }); }}
Coding Layout :
<?xml version="1.0" encoding="utf-8"?><LinearLayout 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:orientation="vertical"tools:context=".Welcome" > <ListViewandroid:id="@+id/listView1"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_centerHorizontal="true"android:layout_centerVertical="true"></ListView> </LinearLayout>
3.Tampilan Aplikasi :
pada tampilan ini, ketika kita menginput sebuah nama senjata dan sudah terdaftar di data base maka ketika kita menekan tombol Deskripsikan, maka aplikasi akan memunculkan informasi atau data dari senjata tersebut, seperti contoh berikut ini :
apabila kita memasukan nama senjata yang tidak dterdaftar dalam database, maka aplikasi akan memberikan keterangan seperti di gambar berikut :
Coding Java Aplikasi :
package com.example.aplikasilogin;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import androidx.appcompat.app.AppCompatActivity;
public class InfoSenjata extends AppCompatActivity {
private SQLiteDatabase db = null;
private Cursor senjataCursor = null;
private EditText txtInggris;
private EditText txtIndonesia;
private DataSenjata dbsenjata = null;
public static final String INFORMASISENJATA = "inggris";
public static final String DESKRIPSI = "indonesia";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
dbsenjata = new DataSenjata(this);
db = dbsenjata.getWritableDatabase();
dbsenjata.createTable(db);
dbsenjata.generateData(db);
setContentView(R.layout.activity_infosenjata);
txtInggris = (EditText) findViewById(R.id.txtInggris);
txtIndonesia = (EditText) findViewById(R.id.txtIndonesia);
}
public void getTerjemahan(View view) {
String result = "";
String englishword = txtInggris.getText().toString();
senjataCursor = db.rawQuery("SELECT ID, INFORMASISENJATA, DESKRIPSI "
+ "FROM senjata where INFORMASISENJATA='" + englishword
+ "' ORDER BY INFROMASISENJATA", null);
if (senjataCursor.moveToFirst()) {
result = senjataCursor.getString(2);
for (; !senjataCursor.isAfterLast(); senjataCursor.moveToNext()) {
result = senjataCursor.getString(2);
}
}
if (result.equals("")) {
result = "DATA SENJATA TIDAK DITEMUKAN";
}
txtIndonesia.setText(result);
}
@Override
public void onDestroy() {
super.onDestroy();
senjataCursor.close();
db.close();
}
}
Coding Java Database :
package com.example.aplikasilogin;
import android.content.ContentValues;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class DataSenjata extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "dbsenjata";
public static final String INFORMASISENJATA= "Nama Senjata";
public static final String DESKRIPSI = "DESKRIPSI SENJATA";
public DataSenjata(Context context) {
super(context, DATABASE_NAME, null, 1);
}
public void createTable(SQLiteDatabase db){
db.execSQL("DROP TABLE IF EXISTS senjata");
db.execSQL("CREATE TABLE if not exists senjata (id INTEGER PRIMARY KEY AUTOINCREMENT, informasisenjata TEXT, deskripsi TEXT);");
}
public void generateData(SQLiteDatabase db){
ContentValues cv=new ContentValues();
cv.put(INFORMASISENJATA, "glock 19");
cv.put(DESKRIPSI, ""pistol yang dirancang dan diproduksi oleh Glock. Glock 19 merupakan pistol Glock 17 yang dikecilkan. " +
"Pistol ini menggunakan magazen standar 15 butir peluru 9 x 19 mm. Glock 19 mulai dikembangkan pada tahun 1988.");
db.insert("senjata", INFORMASISENJATA, cv);
cv.put(INFORMASISENJATA, "M82A1");
cv.put(DESKRIPSI, "Senapan runduk dengan peluru 50 cal");
db.insert("senjata", INFORMASISENJATA, cv);
cv.put(INFORMASISENJATA, "AK47");
cv.put(DESKRIPSI, "senjata buatan rusia");
db.insert("senjata", INFORMASISENJATA, cv);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
}
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
}
}
Coding Layout :
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:background="@android:color/white"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:layout_width="167dp"
android:layout_height="wrap_content"
android:text="Kamus Inggris Indonesia"
android:layout_gravity="center_horizontal" />
<TextView
android:text="Inggris :"
android:id="@+id/TextView01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<EditText
android:text=""
android:id="@+id/txtInggris"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<Button
android:text="Terjemahkan"
android:id="@+id/btnTerjemah"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:onClick="getTerjemahan"
/>
<TextView
android:text="Indonesia :"
android:id="@+id/TextView03"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<EditText
android:text=""
android:id="@+id/txtIndonesia"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:editable="false"
/>
<TextView
android:layout_width="399dp"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="Muhammad Sidiq Jaelani P | 161021450502"
android:textAlignment="center" />
</LinearLayout>
Video Demo :
kurang lebihnya mohon maaf, terima kasih wassalammu'alaikum..