Siapkan kelas sebanyak empat buah
dengan keterangan sebagai berikut:
|
Kelas
|
Fungsi
|
|
FormActivity.java
|
Kelas yang menangani activity login
|
|
ListviewActivity.java
|
Kelas yang menangani halaman
Listview
|
|
MainActivity.java
|
Kelas yang meangani halaman utama
|
|
SpinnerActivity.java
|
Kelas yang menangani halaman
spinner
|
Kita mulai dari kelas ListviewActivity.java,
perhatikan urutan langkah berikut ini untuk membuat kelas baru. Urutan lagnkah
ini berlaku kapan pun setiap kali kita membuat kelas baru
- Klik kanan package à New à Class.
- Pada field superclass, klik button Browse kemudian masukkan kata kunci activity.
- Selanjutnya kita lakukan overriding. Klik kanan pada editor Java à Source à Override/Implement Method.
- pilih metode onCreate(Bundle), lalu klik OK
Sekarang,
tambahkan kode berikut pada ListviewActivity.java
package
com.example.basicapp;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import
android.widget.AdapterView;
import
android.widget.AdapterView.OnItemClickListener;
import
android.widget.ArrayAdapter;
import
android.widget.ListView;
import
android.widget.Toast;
public class
ListviewActivity extends Activity {
ListView lv;
String[] item = {"Nasi Goreng", "Mie
Goreng", "Mie Rebus",
"Magelangan",
"Soto Ayam", "Sop Ayam", "Ayam Goreng"};
@Override
protected void onCreate (Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView (R.layout.activity_listview);
lv = (ListView)findViewById(R.id.idListView);
ArrayAdapter<String> array_item=new
ArrayAdapter<String> (this,
android.R.layout.simple_list_item_1,item);
lv.setAdapter(array_item);
lv.setOnItemClickListener (new OnItemClickListener() {
@Override
public void onItemClick (AdapterView<?>
arg0,View arg1, int arg2,long arg3) {
Toast.makeText(ListviewActivity.this,
"Kamu memilih " + item[arg2],
Toast.LENGTH_SHORT).show();
}
});
}
}
Dengan cara
yang sama seperti langkah ke-10, sekarang buat kelas baru lagi bernama
SpinnerActivity.java dengan kode seperti berikut
package
com.example.basicapp;
import
android.app.Activity;
import android.os.Bundle;
import android.view.View;
import
android.widget.AdapterView;
import
android.widget.AdapterView.OnItemSelectedListener;
import
android.widget.ArrayAdapter;
import
android.widget.ListView;
import
android.widget.Spinner;
import
android.widget.Toast;
public class
SpinnerActivity extends Activity {
Spinner sp;
String[] item = {"Nasi Goreng", "Mie
Goreng", "Mie Rebus",
"Magelangan",
"Soto Ayam", "Sop Ayam", "Ayam Goreng"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView (R.layout.activity_spinner);
sp = (Spinner) findViewById(R.id.idSpinner);
ArrayAdapter<String> array_item=new
ArrayAdapter<String> (this,
android.R.layout.simple_spinner_item,item);
sp.setAdapter(array_item);
sp.setOnItemSelectedListener (new OnItemSelectedListener() {
public void onItemSelected (AdapterView<?>
arg0, View arg1, int arg2, long arg3) {
Toast.makeText(SpinnerActivity.this,"Kamu memilih
" + item[arg2],Toast.LENGTH_SHORT).show();
}
public void onNothingSelected (AdapterView<?>
arg0){
Toast.makeText(SpinnerActivity.this,
"Nothing
Selected",Toast.LENGTH_SHORT).show();
}
});
}
}
Masih
dengan cara yang sama, kita buat lagi kelas baru FormActivity.java dengan kode
seperti berikut :
package
com.example.basicapp;
import
android.app.Activity;
import
android.content.Intent;
import android.os.Bundle;
import android.view.View;
import
android.view.View.OnClickListener;
import
android.widget.Button;
import android.widget.EditText;
import
android.widget.Toast;
public class FormActivity
extends Activity{
EditText username, pass;
Button blogin;
String user_name = "user";
String password = "user1234";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_form);
username = (EditText) findViewById(R.id.inUser);
pass = (EditText) findViewById(R.id.inPass);
blogin = (Button) findViewById(R.id.bLogin);
blogin.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
String u = username.getText().toString();
String p = pass.getText().toString();
checklogin(u,p);
}
});
}
protected void
checklogin(String u, String p) {
if (p.equals(password) && u.equals(user_name)) {
Toast.makeText(this,"Login
Success",Toast.LENGTH_SHORT).show();
Intent intent = new Intent
(FormActivity.this,MainActivity.class);
startActivity(intent);
this.finish();
} else {
Toast.makeText(this,"Login Failed",Toast.LENGTH_SHORT).show();
}
}
}
Terakhir, kita modifikasi kelas
MainActivity.java dengan kode berikut
package com.example.basicapp;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
public class MainActivity extends Activity implements
OnClickListener {
Button
b1,b2,b3,b4,b5;
@Override
protected
void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
b1=(Button)
findViewById(R.id.bToast);
b2=(Button)
findViewById(R.id.bListView);
b3=(Button)
findViewById(R.id.bSpinner);
b4=(Button)
findViewById(R.id.bForm);
b5=(Button)
findViewById(R.id.bExit);
b1.setOnClickListener(this);
b2.setOnClickListener(this);
b3.setOnClickListener(this);
b4.setOnClickListener(this);
b5.setOnClickListener(this);
}
@Override
public
boolean onCreateOptionsMenu (Menu menu) {
getMenuInflater().inflate(R.menu.main,
menu);
return
true;
}
@Override
public void
onClick(View v) {
switch
(v.getId()) {
case
R.id.bToast:Toast.makeText(this, "This is TOAST Notification",
Toast.LENGTH_SHORT).show();
break;
case
R.id.bListView:
Intent
b = new Intent(MainActivity.this,ListviewActivity.class);
startActivity(b);
break;
case
R.id.bSpinner:
Intent
c = new Intent(MainActivity.this,SpinnerActivity.class);
startActivity(c);
break;
case
R.id.bForm:
Intent
d = new Intent(MainActivity.this,FormActivity.class);
startActivity(d);
break;
case
R.id.bExit:
ShowExitDialog();
break;
}
}
private
void ShowExitDialog() {
AlertDialog.Builder
ad = new AlertDialog.Builder(this);
ad.setTitle("Warning");
ad.setMessage("are
you sure to exit?");
ad.setPositiveButton("yes",new
DialogInterface.OnClickListener(){
@Override
public
void onClick(DialogInterface dialog,int which) {
MainActivity.this.finish();
}
});
ad.setNegativeButton("no",
new DialogInterface.OnClickListener(){
@Override
public
void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
ad.show();
}
}
Sebagai
langkah terakhir, karena aplikasi yang kita buat menggunakan lebih dari satu
activity/halaman, maka setiap activity harus didaftarkan di
AndroidManifest.xml.
<?xml version="1.0"
encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.basicapp"
android:versionCode="1"
android:versionName="1.0"
>
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="19"
/>
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme"
>
<activity
android:name=".MainActivity"
android:label="@string/app_name"
>
<intent-filter>
<action android:name="android.intent.action.MAIN"
/>
<category android:name="android.intent.category.LAUNCHER"
/>
</intent-filter>
</activity>
<activity android:name="FormActivity">
</activity>
<activity android:name="ListviewActivity">
</activity>
<activity android:name="SpinnerActivity">
</activity>
</application>
</manifest>
Untuk
menjalankan program di bluestack, maka kita perlu export program BasicApp
terlebih dulu:
Lalu install
dan jalankan aplikasi BasicApp di Bluestack.