Hay hey guys pada kesempatan kali ini saya ingin berbagi source code untuk pembuatan aplikasi android tentang Membuat Data Siswa Menggunakan Eclipse nya menggunakan tab host dan di link-an ke aplikasi yg sudah ada
Sya disini hanya untuk menambah nilai UASsya, makanya say membuat projec ini sekalian berbagi ilmu kepada anda yg sya ketahui membuat projek ini.
Berikut di bawah ini merupakan langkah-langkah yang dilakukan untuk membuat Aplikasi Data Siswa Menggunakan Eclipse
1. Login
Berikut di bawah ini merupakan xml script untuk activity_login.xml :
<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"
tools:context=".LoginActivity" >
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/button1"
android:layout_alignBottom="@+id/button1"
android:layout_alignParentRight="true"
android:layout_marginRight="18dp"
android:onClick="Closs"
android:text="Close" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_marginBottom="166dp"
android:layout_marginRight="64dp"
android:layout_toLeftOf="@+id/button2"
android:onClick="Login"
android:text="Login" />
Berikut di bawah ini merupakan java script untuk LoginActivity.java :
package com.example.hargahotel;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;
public class LoginActivity extends Activity {
private EditText Name;
private EditText Pass;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
Name = (EditText) findViewById(R.id.Name);
Pass = (EditText) findViewById(R.id.Pass);
}
public void Login(View view){
String Nama = Name.getText().toString();
String Password = Pass.getText().toString();
if (Nama.equals("admin") && Password.equals("1234")){
Intent i = new Intent (this, MenuActivity.class);
startActivity(i);
}
else{
Toast.makeText(getApplicationContext(),
"Password Atau Usename Salah, Silakan Pulang",
Toast.LENGTH_LONG) .show();
}
}
}
2. Menu Siswa
import java.util.ArrayList;
import java.util.HashMap;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.graphics.Color;
import android.os.Bundle;
import android.support.v4.view.ViewPager.LayoutParams;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.TableLayout;
import android.widget.TableRow;
import android.widget.TextView;
public class MainActivity extends Activity implements OnClickListener {
SQLiteHelper sqLiteHelper = new SQLiteHelper(this);
TableLayout tabelSiswa;
Button buttonTambahSiswa;
ArrayList<Button> buttonEdit = new ArrayList<Button>();
ArrayList<Button> buttonDelete = new ArrayList<Button>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tabelSiswa = (TableLayout) findViewById(R.id.tabelSiswa);
buttonTambahSiswa = (Button) findViewById(R.id.buttonTambahSiswa);
buttonTambahSiswa.setOnClickListener(this);
TableRow barisTabel = new TableRow(this);
barisTabel.setBackgroundColor(Color.CYAN);
TextView viewHeaderId = new TextView(this);
TextView viewHeaderNis = new TextView(this);
TextView viewHeaderNama = new TextView(this);
TextView viewHeaderJurusan = new TextView(this);
TextView viewHeaderAction = new TextView(this);
viewHeaderId.setText("ID");
viewHeaderNis.setText("Nis");
viewHeaderNama.setText("Nama");
viewHeaderJurusan.setText("Jurusan");
viewHeaderAction.setText("Action");
viewHeaderId.setPadding(5, 1, 5, 1);
viewHeaderNis.setPadding(5, 1, 5, 1);
viewHeaderNama.setPadding(5, 1, 5, 1);
viewHeaderJurusan.setPadding(5, 1, 5, 1);
viewHeaderAction.setPadding(5, 1, 5, 1);
barisTabel.addView(viewHeaderId);
barisTabel.addView(viewHeaderNis);
barisTabel.addView(viewHeaderNama);
barisTabel.addView(viewHeaderJurusan);
barisTabel.addView(viewHeaderAction);
tabelSiswa.addView(barisTabel, new TableLayout.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
ArrayList<HashMap<String, String>> arrayListSiswa = sqLiteHelper
.tampil_semua_siswa();
if (arrayListSiswa.size() > 0) {
for (int i = 0; i < arrayListSiswa.size(); i++) {
// ambil masing-masing hasmap dari arrayListSiswa
HashMap<String, String> hashMapRecordSiswa = arrayListSiswa
.get(i);
// JSONObject jsonChildNode = arraySiswa.getJSONObject(i);
String nis = hashMapRecordSiswa.get("nis");
String nama = hashMapRecordSiswa.get("nama");
String jurusan = hashMapRecordSiswa.get("jurusan");
String id = hashMapRecordSiswa.get("id");
System.out.println("Nis :" + nis);
System.out.println("Nama :" + nama);
System.out.println("Jurusan :" + jurusan);
System.out.println("ID :" + id);
barisTabel = new TableRow(this);
if (i % 2 == 0) {
barisTabel.setBackgroundColor(Color.LTGRAY);
}
TextView viewId = new TextView(this);
viewId.setText(id);
viewId.setPadding(5, 1, 5, 1);
barisTabel.addView(viewId);
TextView viewNis = new TextView(this);
viewNis.setText(nis);
viewNis.setPadding(5, 1, 5, 1);
barisTabel.addView(viewNis);
TextView viewNama = new TextView(this);
viewNama.setText(nama);
viewNama.setPadding(5, 1, 5, 1);
barisTabel.addView(viewNama);
TextView viewJurusan = new TextView(this);
viewJurusan.setText(jurusan);
viewJurusan.setPadding(5, 1, 5, 1);
barisTabel.addView(viewJurusan);
buttonEdit.add(i, new Button(this));
buttonEdit.get(i).setId(Integer.parseInt(id));
buttonEdit.get(i).setTag("Edit");
buttonEdit.get(i).setText("Edit");
buttonEdit.get(i).setOnClickListener(this);
barisTabel.addView(buttonEdit.get(i));
buttonDelete.add(i, new Button(this));
buttonDelete.get(i).setId(Integer.parseInt(id));
buttonDelete.get(i).setTag("Delete");
buttonDelete.get(i).setText("Delete");
buttonDelete.get(i).setOnClickListener(this);
barisTabel.addView(buttonDelete.get(i));
tabelSiswa.addView(barisTabel, new TableLayout.LayoutParams(
LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
}
}
}
@Override
public void onClick(View view) {
if (view.getId() == R.id.buttonTambahSiswa) {
// Toast.makeText(MainActivity.this, "Button Tambah Data",
// Toast.LENGTH_SHORT).show();
tambahSiswa();
} else {
/*
* Melakukan pengecekan pada data array, agar sesuai dengan index
* masing-masing button
*/
for (int i = 0; i < buttonEdit.size(); i++) {
/* jika yang diklik adalah button edit */
if (view.getId() == buttonEdit.get(i).getId()
&& view.getTag().toString().trim().equals("Edit")) {
// Toast.makeText(MainActivity.this, "Edit : " +
// buttonEdit.get(i).getId(), Toast.LENGTH_SHORT).show();
int id = buttonEdit.get(i).getId();
getDataByID(id);
} /* jika yang diklik adalah button delete */
else if (view.getId() == buttonDelete.get(i).getId()
&& view.getTag().toString().trim().equals("Delete")) {
// Toast.makeText(MainActivity.this, "Delete : " +
// buttonDelete.get(i).getId(), Toast.LENGTH_SHORT).show();
int id = buttonDelete.get(i).getId();
deleteSiswa(id);
}
}
}
}
public void deleteSiswa(int id) {
sqLiteHelper.hapus_siswa(id);
/* restart acrtivity */
finish();
startActivity(getIntent());
}
public void getDataByID(int id) {
String nimEdit = null, namaEdit = null, jurusanEdit = null;
HashMap<String, String> hashMapSiswa = sqLiteHelper
.tampil_siswa_berdasarkan_id(id);
for (int i = 0; i < hashMapSiswa.size(); i++) {
nimEdit = hashMapSiswa.get("nis");
namaEdit = hashMapSiswa.get("nama");
jurusanEdit = hashMapSiswa.get("jurusan");
}
LinearLayout layoutInput = new LinearLayout(this);
layoutInput.setOrientation(LinearLayout.VERTICAL);
// buat id tersembunyi di alertbuilder
final TextView viewId = new TextView(this);
viewId.setText(String.valueOf(id));
viewId.setTextColor(Color.TRANSPARENT);
layoutInput.addView(viewId);
final EditText editNis = new EditText(this);
editNis.setText(nimEdit);
layoutInput.addView(editNis);
final EditText editNama = new EditText(this);
editNama.setText(namaEdit);
layoutInput.addView(editNama);
final EditText editJurusan = new EditText(this);
editJurusan.setText(jurusanEdit);
layoutInput.addView(editJurusan);
AlertDialog.Builder builderEditSiswa = new AlertDialog.Builder(this);
builderEditSiswa.setTitle("Update Siswa");
builderEditSiswa.setView(layoutInput);
builderEditSiswa.setPositiveButton("Update",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
String nis = editNis.getText().toString();
String nama = editNama.getText().toString();
String jurusan = editJurusan.getText().toString();
System.out.println("Nis : " + nis + " Nama " + nama + " Jurusan : "
+ jurusan);
sqLiteHelper.update_siswa(Integer.parseInt(viewId
.getText().toString()), editNis.getText()
.toString(),editNama.getText().toString(),
editJurusan.getText().toString());
/* restart acrtivity */
finish();
startActivity(getIntent());
}
});
builderEditSiswa.setNegativeButton("Cancel",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
builderEditSiswa.show();
}
public void tambahSiswa() {
/* layout akan ditampilkan pada AlertDialog */
LinearLayout layoutInput = new LinearLayout(this);
layoutInput.setOrientation(LinearLayout.VERTICAL);
final EditText editNis = new EditText(this);
editNis.setHint("Nis");
layoutInput.addView(editNis);
final EditText editNama = new EditText(this);
editNama.setHint("Nama");
layoutInput.addView(editNama);
final EditText editJurusan = new EditText(this);
editJurusan.setHint("Jurusan");
layoutInput.addView(editJurusan);
AlertDialog.Builder builderInsertSiswa = new AlertDialog.Builder(this);
builderInsertSiswa.setTitle("Insert Siswa");
builderInsertSiswa.setView(layoutInput);
builderInsertSiswa.setPositiveButton("Insert",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
String nis = editNis.getText().toString();
String nama = editNama.getText().toString();
String jurusan = editJurusan.getText().toString();
System.out.println(" Nis " + nis + "Nama : " + nama + " Jurusan : "
+ jurusan);
sqLiteHelper.tambah_siswa(nis,nama,jurusan);
/* restart acrtivity */
finish();
startActivity(getIntent());
}
});
builderInsertSiswa.setNegativeButton("Cancel",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
builderInsertSiswa.show();
}
}
3. SQLite Android coding :
import java.util.ArrayList;
import java.util.HashMap;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class SQLiteHelper extends SQLiteOpenHelper {
private static final String nama_database = "adit_jr.db";
private static final int versi_database = 1;
private static final String query_buat_tabel_siswa_pemain = "CREATE TABLE IF NOT EXISTS tabel_mahasiswa (id INTEGER PRIMARY KEY AUTOINCREMENT, nis INTEGER, nama TEXT, jurusan TEXT)";
private static final String query_hapus_tabel_siswa_pemain = "DROP TABLE IF EXISTS query_buat_tabel_siswa_pemain";
public SQLiteHelper(Context context) {
super(context, nama_database, null, versi_database);
}
@Override
public void onCreate(SQLiteDatabase sqLiteDatabase) {
sqLiteDatabase.execSQL(query_buat_tabel_siswa_pemain);
System.out.println("tabel_siswa sudah dibuat");
}
@Override
public void onUpgrade(SQLiteDatabase database, int versi_lama,
int versi_baru) {
database.execSQL(query_hapus_tabel_siswa_pemain);
onCreate(database);
}
public void tambah_siswa(String nis, String nama, String jurusan) {
SQLiteDatabase database = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("nis", nis);
values.put("nama", nama);
values.put("jurusan",jurusan);
database.insert("tabel_siswa", null, values);
database.close();
}
public ArrayList<HashMap<String, String>> tampil_semua_siswa() {
// deklarasikan sebuah arraylist yang bisa menampung hashmap
ArrayList<HashMap<String, String>> arrayListSiswa= new ArrayList<HashMap<String, String>>();
SQLiteDatabase database = this.getWritableDatabase();
Cursor cursor = database.rawQuery("SELECT * FROM tabel_mahasiswa", null);
// kursor langsung diarkan ke posisi paling awal data pada tabel_mahasiswa
if (cursor.moveToFirst()) {
do {
// deklarasikan sebuah hashmap, yang bisa menamp
HashMap<String, String> hashMapsiswa = new HashMap<String, String>();
// masukkan masing-masing field dari tabel_siswa ke dalam hashMapsiswa
//pastikan id_siswa, nim, nama dan jurusan sama persis dengan field yang ada pada id_siswa
hashMapsiswa.put("id", cursor.getString(0));
hashMapsiswa.put("nis", cursor.getString(1));
hashMapsiswa.put("nama", cursor.getString(2));
hashMapsiswa.put("jurusan", cursor.getString(3));
// masukkan hashMapmahasiswa ke dalam arrayListMahasiswa
arrayListSiswa.add(hashMapsiswa);
} while (cursor.moveToNext());
}
return arrayListSiswa;
}
public int update_siswa(int id, String nis, String nama, String jurusan) {
SQLiteDatabase database = this.getWritableDatabase();
ContentValues recordSiswa = new ContentValues();
recordSiswa.put("nis", nis);
recordSiswa.put("nama", nama);
recordSiswa.put("jurusan", jurusan);
return database.update("tabel_mahasiswa", recordSiswa, "id=" + id, null);
}
public void hapus_siswa (int id) {
SQLiteDatabase database = this.getWritableDatabase();
database.execSQL("DELETE FROM tabel_siswa WHERE id='" + id+ "'");
database.close();
}
public HashMap<String, String> tampil_siswa_berdasarkan_id(int id) {
SQLiteDatabase database = this.getReadableDatabase();
HashMap<String, String> hashMapsiswa = new HashMap<String, String>();
Cursor cursor = database.rawQuery("SELECT * FROM tabel_mahasiswa WHERE id=" + id + "", null);
if (cursor.moveToFirst()) {
do {
hashMapsiswa.put("id", cursor.getString(0));
hashMapsiswa.put("nis", cursor.getString(1));
hashMapsiswa.put("nama", cursor.getString(2));
hashMapsiswa.put("jurusan", cursor.getString(3));
} while (cursor.moveToNext());
}
return hashMapsiswa;
}
}
Hasil RUN :





