Kali ini saya akan memberikan koding nge-link 2 activity dalam android, Jadi dari suatu halaman, jika di klik tombol, ia akan menuju ke halaman
lain dengan membawa beberapa pesan(parameter) yang nantinya akan kita
simpan dalam Intent. Hasilnya sudah diuji bisa di play di emulator, oke lansung aja ikuti langkah di bawah ini :
1. Buat dulu 6 Activity, misal namanya “HelloNumberActivity.java”, “Number.java”, "Song.java", "Arithmatic.java", "Playing.java", "Info.java", kita akan nge-link dari HelloNumberActivity ke Number, Song, Arithmatic, Playing, dan Info
2. Lalu, buat tampilan layoutnya misal "main.xml", "number.xml", "song.xml", "artihmatic.xml", "playing.xml", "info.xml"
3. Ketikkan script berikut untuk setting layoutnya :
main.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/main"
android:orientation="vertical" >
<Button
android:id="@+id/btnnumber"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="63dp"
android:layout_marginTop="108dp"
android:background="@drawable/btnnumber" />
<Button
android:id="@+id/btnsong"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_alignTop="@+id/btnnumber"
android:layout_marginLeft="44dp"
android:layout_toRightOf="@+id/btnnumber"
android:background="@drawable/btnsong"/>
<Button
android:id="@+id/btnarith"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_alignLeft="@+id/btnnumber"
android:layout_centerVertical="true"
android:background="@drawable/btnarith" />
<Button
android:id="@+id/btnplaying"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_alignLeft="@+id/btnsong"
android:layout_alignTop="@+id/btnarith"
android:background="@drawable/btnplaying" />
<Button
android:id="@+id/btninfo"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_alignLeft="@+id/btnarith"
android:layout_below="@+id/btnarith"
android:layout_marginTop="22dp"
android:background="@drawable/btninfo" />
<Button
android:id="@+id/btnexit"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_alignLeft="@+id/btnplaying"
android:layout_alignTop="@+id/btninfo"
android:background="@drawable/btnexit" />
</RelativeLayout>
Kalo udah setting buat layout number, yaitu
number.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/main"
android:orientation="vertical" >
<Button
android:id="@+id/btn1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="43dp"
android:layout_marginTop="104dp"
android:background="@drawable/btn01" />
<Button
android:id="@+id/btn2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/btn1"
android:layout_alignTop="@+id/btn1"
android:layout_centerHorizontal="true"
android:background="@drawable/btn02" />
<Button
android:id="@+id/btn3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/btn2"
android:layout_alignTop="@+id/btn2"
android:layout_marginLeft="14dp"
android:layout_toRightOf="@+id/btn2"
android:background="@drawable/btn03" />
<Button
android:id="@+id/btn4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/btn1"
android:layout_below="@+id/btn1"
android:layout_marginTop="26dp"
android:background="@drawable/btn04" />
<Button
android:id="@+id/btn5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/btn2"
android:layout_alignTop="@+id/btn4"
android:background="@drawable/btn05" />
<Button
android:id="@+id/btn6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@+id/btn3"
android:layout_alignTop="@+id/btn5"
android:background="@drawable/btn06" />
<Button
android:id="@+id/btn7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/btn4"
android:layout_below="@+id/btn4"
android:layout_marginTop="26dp"
android:background="@drawable/btn07" />
<Button
android:id="@+id/btn8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/btn5"
android:layout_alignTop="@+id/btn7"
android:background="@drawable/btn08" />
<Button
android:id="@+id/btn9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@+id/btn6"
android:layout_alignTop="@+id/btn8"
android:background="@drawable/btn09" />
<Button
android:id="@+id/btn10"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/btn7"
android:layout_below="@+id/btn7"
android:layout_marginTop="27dp"
android:background="@drawable/btn010" />
<Button
android:id="@+id/btnback"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_alignBottom="@+id/btn10"
android:layout_alignRight="@+id/btn9"
android:background="@drawable/btnback" />
</RelativeLayout>
selanjutnya, setting layout song :
song.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@drawable/backgroundsong" >
<Button
android:id="@+id/btnplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_marginBottom="118dp"
android:layout_marginLeft="49dp"
android:background="@drawable/play" />
<Button
android:id="@+id/btnstop"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/btnplay"
android:layout_alignParentRight="true"
android:layout_alignTop="@+id/btnplay"
android:layout_marginRight="44dp"
android:background="@drawable/stop" />
<Button
android:id="@+id/btnback"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:background="@drawable/btnback" />
</RelativeLayout>
arithmatic.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@drawable/background">
<Button
android:id="@+id/btnplus"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="56dp"
android:layout_marginTop="128dp"
android:background="@drawable/btnplus" />
<Button
android:id="@+id/btnminus"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_alignTop="@+id/btnplus"
android:layout_marginLeft="16dp"
android:layout_toRightOf="@+id/btnplus"
android:background="@drawable/btnminus" />
<Button
android:id="@+id/btndivide"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_alignLeft="@+id/btnminus"
android:layout_below="@+id/btnminus"
android:layout_marginTop="16dp"
android:background="@drawable/btndivide" />
<Button
android:id="@+id/btnmulti"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_alignLeft="@+id/btnplus"
android:layout_alignTop="@+id/btndivide"
android:background="@drawable/btnmulti" />
<Button
android:id="@+id/btnback"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:background="@drawable/btnback" />
</RelativeLayout>
playing.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/background2" >
<Button
android:id="@+id/start"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="116dp"
android:background="@drawable/btnstart" />
<Button
android:id="@+id/about"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/start"
android:layout_centerHorizontal="true"
android:layout_marginTop="26dp"
android:background="@drawable/btnabout" />
<Button
android:id="@+id/back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/about"
android:layout_centerHorizontal="true"
android:layout_marginTop="25dp"
android:background="@drawable/btnexitplay" />
</RelativeLayout>
info.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@drawable/info" >
<Button
android:id="@+id/child_btnPage"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_alignParentBottom="true"
android:background="@drawable/btnback" />
</RelativeLayout>
5. Yap, setelah setting layout, buat koding activitynya, kaya gini :
HelloNumberActivity.java
package com.hellonumber;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class HellonumberActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button number = (Button)findViewById(R.id.btnnumber);
number.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(HellonumberActivity.this, Number.class);
startActivity(i);
}
});
Button song = (Button)findViewById(R.id.btnsong);
song.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(HellonumberActivity.this, Song.class);
startActivity(i);
}
});
Button arithmatic = (Button)findViewById(R.id.btnarith);
arithmatic.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(HellonumberActivity.this, Arithmatic.class);
startActivity(i);
}
});
Button playing = (Button)findViewById(R.id.btnplaying);
playing.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(HellonumberActivity.this, Playing.class);
startActivity(i);
}
});
}
}
Koding diatas kita membuat fungsi pada saat button di klik. Di dalamnya kita buat
Intent baru untuk membawa pesan dari Activity HelloNumber ini ke Number, Song, Arithmatic, Playing, Song, Info.
Untuk koding Number.java nya kaya gini nih :
package com.hellonumber;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class Number extends Activity{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.number);
Button btnback = (Button)findViewById(R.id.btnback);
//menerima Intent yang dikirim
btnback.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
finish();
}
});
}
}
Penjelasan lagi tentang coding Number.java diatas:
untuk kembali ke halaman HelloNumber, kita menambahkan lagi fungsi
pada button yang ada. Tapi kali ini fungsi yang kita buat hanya
finish(), maksud dari finish disini adalah kita mengakhiri Activity ini,
kemudian kita akan masuk ke Activity terakhir yang masih berjalan
(dalam hal ini Activity HelloNumber karena kita belum mem”finish” nya). Fungsi
finish ini mirip dengan jika kita menekan tombol back pada ponsel
Android kita.Setelah itu, jangan lupa untuk “mendaftarkan” semua Activity yang
dibuat ke dalam AndroidManifest.xml, AndroidManifest akan secara
otomatis menambahkan activity pertama yang kita buat. Jadi jika kita
membuat Activity lain, jangan lupa untuk dimasukkan.
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.hellonumber"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="8" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".HelloNumberActivity"
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=".Number">
<intent-filter>
<action android:name="android.intent.action.Number" />
</intent-filter>
</activity>
</application>
</manifest>
Lakukan koding yang sama pada Acivity Song, Arithmatic, Playing, Info
kalo udah di run hasilnya kaya gini :
Jumat, 19 Desember 2014
Android - Final Project Part 2 - Menghubungkan 2 activity dalam android [Pindah Activity]
19.23
Inayah Dreamer
No comments
Number
Song
Arithmatic
Playing
0 komentar:
Posting Komentar