Sunday, March 31, 2013

membuat button link dan tombol backnya di aplikasi android

5 comments
Salam Sukses,
Alhamdulillah saya rizky ardian bisa bertemu dengan anda, pembaca setia blog ini. Minggu kemarin, tambah lagi rekan saya di dunia maya, yaitu mas sigit. rekan kita ini insyaAllah akan membuat aplikasi berbasis android mengenai obat herbal, kita doakan agar lancar pembuatannya dan bermanfaat + barokah aplikasinnya. Okey langsung saja, kali ini kita akan belajar membuat button link lagi beserta tombol backnya, berhubung tutorial saya kemarin, agak jelimet + susah untuk di pahami. Langsung saja, kali ini kita akan bermain dengan:
-main.xml(tampilan menu utama)
-Main.java
-menu1.xml(tampilan menu 1)
-Menu1.java

   Untuk pertama kali kita buka software, lalu buat project baru. Activity & Layout namenya kita beri Main dan main saja untuk memudahkan kita.


Gambar new Blank Activity 1.0
   Okey, Untuk langkah keduanya yaitu kita melayout di main.xml. Beri text view dan button dengan cara di drga ke lembar kerja. Untuk ukuran dan nama, bisa di pilih sesuai selera anda. Untuk mengganti is teks, bisa di ganti di menu Properties pilih text. sedangkan untuk tombol yang terpenting adalah id -nya. Karna di situlah tombol bisa berfungsi. Setelah selesai jangan lupa di save, klu belum disave, idnya tidak keluar di javanya dan akan terdapat simbol bintang di namanya.


Gambar main.xml 2.0
sehingga source kodenya menjadi seperti ini:
<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" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:text="Tampilan Menu Utama"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <Button
        android:id="@+id/btnmenu1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textView1"
        android:layout_centerHorizontal="true"
        android:text="Menu 1" />

</RelativeLayout>

   Lalu kita akan mengedit Main.javanya. dengan menambahi source code tepat di bawak setContentView(R.layout.main); yaitu:
 Button btnmenu1=(Button)findViewById(R.id.btnmenu1);
        btnmenu1.setOnClickListener(new View.OnClickListener() {
           
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent i=new Intent(getApplicationContext(),Menu1.class);
                startActivity(i);
               
            }
        });


    Gambar Main.java 3.0
Pada skrip ini akan terdapat simbol error karna kita belum membuat Menu1nya. Seelum itu saya akan menjelaskan skema gambar di atas. Perhatikan btnmenu1 yang pertama baris pertama, itu adalah variabel(nama samaran) yang baru kita buat untuk menganalisa tombol yang akan kita beri aktivitas. sedangkan findViewByid tersebut gunanya mencari, tombol mana yang akan di sambungkan dengan variabel ini. Jawabannya yaitu idi yang kita buat di main.xml tadi yang berisi @+id/btnmenu1. Jangan lupa setelah menulis penjabarannya di kasih (;) biar tidak error. Sampai sini sudah faham?
Klu sudah kita lanjutkan. Terus pada baris kedua, variabel yang baru kita buat tadi kita beri aktivitas yaitu setOnclik(bila di klik) akan membuka baru. Ha, yang di buka itu apa. Kita buat Intent sebagai perantaranya. new(baru) betulkan??? getApli..., Menu1.class= pada aktivitas ini button ini akan bekerja. Jadi tergantung isi code di Menu1. setela itu kita tambai startActivity karna variabel (i) yang di Intent tadi klu belum ada source kode ini perintahnya belum bisa di jalankan. asil akir scrip Main.java akan seperti ini:

package app.rizky.linkmenuback;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.Button;

public class Main extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Button btnmenu1=(Button)findViewById(R.id.btnmenu1);
        btnmenu1.setOnClickListener(new View.OnClickListener() {
           
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent i=new Intent(getApplicationContext(),Menu1.class);
                startActivity(i);
               
            }
        });
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
}


Langsung saja buat Menu1.java di folder src-app-klikkanan new class. Beri nama Menu1.class. Kita tambah source code:


 extends Activity {
public void onCreate(Bundle savedInstansceState){
        super.onCreate(savedInstansceState);
        setContentView(R.layout.menu1);

 


Gambar Main1.java 4.0
   Kita liat skrip diatas mas error, karena e karena kita belum bikin layout mu1.xmlnya(tampilannya). sourcecode setContentView di atas adalah untuk mengeset/mengatur, jika ada source yang memanggil Menu1.java akan langsung di tampilkan ke menu 1.xml.Sudah pahamkan????...
jadi skrip yang di asilkan dari Menu1.java akan seperti ini:

import android.app.Activity;
import android.os.Bundle;

public class Menu1 extends Activity {
    public void onCreate(Bundle savedInstansceState){
        super.onCreate(savedInstansceState);
        setContentView(R.layout.menu1);
    }

}


   Selanjutnya kita akan membuat layout menu1.xml dengan cara klik res-klik kanan pada layout-pili new-android xml-dan beri nama menu1.setela itu atur layoutnya seperti cara yang pertama tadi, namu bedanya kita beri tombol back untuk kembali ke main.xml(tampilan menu utama uji coba).
   Kita beri teks view sebagai penanda, dan button back(berikan id tombol yang mudah di inggat), untuk idnya saya beri btnkembali. Sehingg tampilannya seperti ini dan jika tombol back di tekan akan kembali ke main.xml. Sudah Pahamkan???




Gambar menu1.xml 5.0
Sehingga source kode yang di hasilkan oleh menu1.xml jika sama akan seperti ini:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Tampilan Menu 1"
            android:textAppearance="?android:attr/textAppearanceLarge" />

    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" >


        <Button
            android:id="@+id/btnkembali"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Back" />

    </LinearLayout>

</LinearLayout>

  Kan pada menu1.xml kita beri tombol back, namun di dalam skrip tadi belum di beri aktivitas pada tombol tersebut. jadi kita revisi Menu1.javanya, sehingga menghasillkan source code seperti ini:

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class Menu1 extends Activity {
    public void onCreate(Bundle savedInstansceState){
        super.onCreate(savedInstansceState);
        setContentView(R.layout.menu1);
        Button btnkembali=(Button)findViewById(R.id.btnkembali);
        btnkembali.setOnClickListener(new View.OnClickListener() {
           
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent i=new Intent(getApplicationContext(),Main.class);
                startActivity(i);
               
            }
        });
    }

}

   Gambar Main1.java 4.1

Perhatikan pada Main.class baris ke2 dari bawah, aha pada skrip itu akan di link ke menu Utama .Sudah pahamkan??
eits sebelum di run, jangan lupa di daftarkan di android manifest yang Menu1.javanya.

Gambar AndroidManifest 6.0
Perhatikan:.Main itu pas otomatis sudah terdafta&progam yang pertama kali di jalankan jika aplikasi ini di run. Kita daftarkan nam javanya di bawah<activity>yang bawa sekali dan di</application>
Congralations....,tinggal kita run aplikasi ini. Alhamdulillah sudah selesai.
agar lebih paham, belajarla untuk mendeklarasikan source code ini dan buat lebih banyak menu .
selamat bertemu di pembelajaran yang lain ya, Salam Sukses!!!!....,














5 comments: