Buat database
package com.example.terjemah;
import android.content.ContentValues;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class DatabaseHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "dbterjemah";
public static final String INGGRIS= "inggris";
public static final String INDONESIA = "indonesia";
public static final String JERMAN = "JERMAN";
//Constructor DataKamus untuk initiate database
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, 1);
}
//method createTable untuk membuat table kamus
public void createTable(SQLiteDatabase db){
db.execSQL("DROP TABLE IF EXISTS kamus");
db.execSQL("CREATE TABLE if not exists kamus (_id INTEGER PRIMARY KEY AUTOINCREMENT, " + "inggris TEXT, indonesia TEXT, jerman TEXT);");
}
//method generateData untuk mengisikan data ke kamus.
public void generateData(SQLiteDatabase db){
ContentValues cv=new ContentValues();
cv.put(INGGRIS, "run");
cv.put(INDONESIA, "lari");
cv.put(JERMAN, "laufen");
db.insert("kamus", INGGRIS, cv);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
createTable(db);
generateData(db);
}
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
//Toast.makeText(getBaseContext(), "Oncreate", Toast.LENGTH_SHORT).show();
createTable(db);
generateData(db);
}
}
Buat layout untuk menampilkan terjemahan
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Kamus Inggris Indonesia Jerman" />
<TextView
android:id="@+id/TextView01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Inggris :" >
</TextView>
<EditText
android:id="@+id/txtInggris"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="" >
<requestFocus>
</requestFocus>
</EditText>
<Button
android:id="@+id/btnTerjemah"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:onClick="getTerjemahan"
android:text="Terjemahkan" >
</Button>
<TextView
android:id="@+id/TextView03"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Indonesia :" >
</TextView>
<EditText
android:id="@+id/txtIndonesia"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:editable="false"
android:text="" >
</EditText>
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Jerman" >
</TextView>
<EditText
android:id="@+id/txtJerman"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
</EditText>
</LinearLayout>
Buat class untuk panggil layout terjemah
package com.example.terjemah;
import android.app.Activity;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends Activity {
private SQLiteDatabase db = null;
private Cursor kamusCursor = null;
private EditText txtInggris;
private EditText txtIndonesia;
private EditText txtJerman;
private DatabaseHelper datakamus = null;
public static final String INGGRIS = "inggris";
public static final String INDONESIA = "indonesia";
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
datakamus = new DatabaseHelper(this);
db = datakamus.getWritableDatabase();
setContentView(R.layout.activity_main);
txtInggris = (EditText) findViewById(R.id.txtInggris);
txtIndonesia = (EditText) findViewById(R.id.txtIndonesia);
txtJerman = (EditText) findViewById(R.id.txtJerman);
}
public void getTerjemahan(View view) {
String bhsindonesia = "";
String bhsjerman="";
String englishword = txtInggris.getText().toString();
kamusCursor = db.rawQuery("SELECT _ID, INGGRIS, INDONESIA, JERMAN "
+ "FROM kamus where INGGRIS='" + englishword
+ "' ORDER BY INGGRIS", null);
if (kamusCursor.moveToFirst()) {
for (; !kamusCursor.isAfterLast();
kamusCursor.moveToNext()) {
bhsindonesia = kamusCursor.getString(2);
bhsjerman = kamusCursor.getString(3);
}
}else{
Toast.makeText(getBaseContext(), "Terjemahan Tidak ditemukan", Toast.LENGTH_SHORT).show();
}
txtIndonesia.setText(bhsindonesia);
txtJerman.setText(bhsjerman);
}
@Override
public void onDestroy() {
super.onDestroy();
try {
kamusCursor.close();
db.close();
}catch (Exception e){
}
}
}
Buat layout untuk input baru data terjemah
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text = "Kamus Inggris Indonesia Jerman" />
<TextView
android:id="@+id/TextView01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text = "Inggris :" >
</TextView>
<EditText
android:id="@+id/txtInggris"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="" >
</EditText>
<TextView
android:id="@+id/TextView03"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text = "Indonesia :" >
</TextView>
<EditText
android:id="@+id/txtIndonesia"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="" >
</EditText>
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text = "Jerman" >
</TextView>
<EditText
android:id="@+id/txtJerman"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
</EditText>
<Button
android:id="@+id/btnTerjemah"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:onClick="saveData"
android:text = "Save Data" >
</Button>
</LinearLayout>
Buat class untuk panggil layout input data
package com.example.terjemah;
import android.app.Activity;
import android.content.ContentValues;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;
public class TambahActivity extends Activity {
private SQLiteDatabase db = null;
private EditText txtInggris;
private EditText txtIndonesia;
private EditText txtJerman;
private DatabaseHelper datakamus = null;
public static final String INGGRIS= "inggris";
public static final String INDONESIA = "indonesia";
public static final String JERMAN = "JERMAN";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tambah);
datakamus = new DatabaseHelper(this);
db = datakamus.getWritableDatabase();
txtInggris = (EditText) findViewById(R.id.txtInggris);
txtIndonesia = (EditText) findViewById(R.id.txtIndonesia);
txtJerman = (EditText) findViewById(R.id.txtJerman);
}
public void saveData(View view) {
String bhsindonesia = txtIndonesia.getText().toString();;
String bhsjerman= txtJerman.getText().toString();
String englishword = txtInggris.getText().toString();
ContentValues cv=new ContentValues();
cv.put(INGGRIS, englishword);
cv.put(INDONESIA, bhsindonesia);
cv.put(JERMAN, bhsjerman);
if (db.insert("kamus", INGGRIS, cv)>0){
Toast.makeText(getBaseContext(), "Save Data Success", Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(getBaseContext(), "Save Data Fail", Toast.LENGTH_SHORT).show();
}
}
@Override
public void onDestroy() {
super.onDestroy();
db.close();
}
}
JANGAN LUPA UNTUK MENGATUR CLASS MANA (MainActivity.java atau TambahActivity.java) YANG AKAN DI-RUNNING. ATUR CLASS TERSEBUT PADA FILE AndroidManifest.xml.
Tidak ada komentar:
Posting Komentar