Hai guys, kali ini kita akan buat sebuah aplikasi Android sederhana yang isinya adalah untuk menampilkan splash screen atau form loading, sebelum kita memulai coding program, sebaiknya aku kasih rancangan dari halaman loading yang akan kita buat.
ini loh gambarnya :
sebelumnya kita siapkan dulu image yang mau ditampilkan, buat sebuah project baru bernama coba kemudian pilih Target platform-nya 2.2 (android froyo), setelah project berhasil dibuat, kita buat package di dalam directory src dengan cara klik kanan dibagian direktory src pada window eclipse kemudian pilih New
-> Package dan silakan ikuti langkah berikutnya(mudah kok). Karena form loading ini akan ditampilkan sebelum halaman utama, maka kita buat sebuah class java baru yang bernama Loading.java (harus diingat bahwa huruf pertama dari nama class adalah kapital). silakan copy coding Loading.java dibawah ini:
package com.juwita;
//Nama package yang kamu buat tadi,
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.widget.ProgressBar;
import android.widget.TextView;
import android.content.Intent;
public class Loading extends Activity {
ProgressBar bar;
TextView txt;
int total=0;
Intent intent;
boolean isRunning=false;
// handler for the background updating
Handler handler=new Handler() {
//coding ini yang akan menampilkan berapa persen progress yang telah dijalani.
@Override
public void handleMessage(Message msg) {
total=total+5;
String perc=String.valueOf(total).toString();
txt.setText(perc+"% Completed");
bar.incrementProgressBy(5);
}
};
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.splash);
bar=(ProgressBar)findViewById(R.id.progg);
txt=(TextView)findViewById(R.id.load);
}
public void onStart() {
super.onStart();
// reset the bar to the default value of 0
bar.setProgress(0);
final Loading sPlashScreen = this;
// create a thread for updating the progress bar
Thread background=new Thread(new Runnable() {
public void run() {
try {
for (int i=0;i<20 && isRunning;i++) {
// wait 1000ms between each update
Thread.sleep(1000);
handler.sendMessage(handler.obtainMessage());
}
finish();
}
catch (Throwable t) {
}
Intent intent = new Intent();
//Coba merupakan nama activity yang kita isi saat pertama kali membuat project, jadi harus disesuaikan dengan nama activity yang kalian buat ya :))
//coding ini akan dijalankan ketika objek sPlashScreen yang merupakan objek langsung dari class Loading telah selesai maka Coba.class akan diproses atau dijalankan.
intent.setClass(sPlashScreen, Coba.class);
startActivity(intent);
}
});
isRunning=true;
// start the background thread
background.start();
}
public void onStop() {
super.onStop();
isRunning=false;
}
}
setelah file javanya dibuat, saatnya kita atur Layoutnya dengan file xml, oleh karena itu buat file xml baru di dalam directory layout. Untuk penamaan file xml, semua harus huruf kecil. nama file xml di project ini harus sama dengan yang di file Loading.java, yaitu splash.xml.
silakan copy coding splash.xml dibawah ini:
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="bottom"
>
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bg"
android:layout_gravity="center"
android:layout_marginBottom="60dip"
/>
android:id="@+id/progg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dip"
style="?android:attr/progressBarStyleHorizontal"
/>
android:id="@+id/load"
android:textColor="#FFCCFF"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
>
langkah selanjutnya ialah, modifikasi file activity kita,yaitu Coba.java, berikut ini codingnya:
package com.juwita;
import android.app.Activity;
import android.os.Bundle;
public class Coba extends Activity{
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
kemudian edit file main.xml yang ada didalam directory layout, file ini secara default langsung di generate saat pertama kali kita membuat project baru,
Berikut ini coding main.xml:
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
android:textSize="30dip"
android:layout_width="wrap_content" android:layout_height="wrap_content">
Langkah terakhir ialah memodifikasi file AndroidManifet.xml dengan mendaftarkan file java Loading,
silakan tambahkan coding diatas ini,
setelah itu, coba jalankan project ini:
Jika berhasil maka output akan menjadi seperti dibawah ini:
Selamat mencoba ^_^,
kalo ada yang mau ditanyai, silakan aja ya, mari kita sama-sama belajar.
waah post nyah sedikit membantu, tapi sedikit harus di perbaiki,
ReplyDeletesource code splash.xml nyah masih banyak yang salah
tp tetep semangat berbagi ilmu yah kaka :)
kalo bisa sih di perbaiki
hee
salah di bagian mana ya??
ReplyDeletekrn ini koding dah aq jalanin sendiri lohhh..
Ok thx ya dah mampir n thx jg sarannya ^_^
source code yg buat modifikasi androidmanifest di sisipin dmna ka?
Deletetrus codingan yg loading.java ada yg error deh ka
mbak-e cuma koment aja... kok ndak dikasih download source code nya sich... hehe.. ma'af cuma koment.. :-)
ReplyDeletekalau aku nanya2 seputar android kira2 berkenan tidak mbak-e..
:-s
hai anonim,,
Deletetujuan aku kasih tertulis ini codingnya biar kamu bisa ketik sendiri, karena dengan ketik sendiri,kamu bisa sambil belajar loh..
selama pertanyaan kamu bisa aku jwb, knp ga??
Maaf ya lama balasnya :)
Terimakasih.. Aplikasiku semakin komplit dengan splashscreen.. Sangat bermanfaat..
ReplyDeleteGBU
Hai serubanget,
Deleteterimkasih dah mampir ke Blog ku.
Sukses terus ya.
GBU full ^_^
mau nnya dung..
ReplyDeletekalo misal mau buat loading gmn yah?
jadi progress bar nya muter aja..
cara nya gmn itu??
makaish.. :)
sukses terus blog nya.. ^^
mba, itu kan warna progressbarnya orange. misalkan kalo mau kita ganti warna merah atau biru bisa ngga ? trus gmn caranya ?
ReplyDeleteDescription Resource Path Location Type
ReplyDeleteElement type "android:id" must be followed by either attribute specifications, ">" or "/>". splash.xml /Cover/res/layout line 8 Android XML Format Problem
...kira2 kenapa ya
mbak - e, sy mencoba memahami maksud dari tulisan mbak - e yang di atas, maksudnya mah udah baek .... tapi kemaren saya lagi di buru deadline tugas jadi gx sempet nulis koding sendiri. blum lagi nanti klo ada errornyah,
ReplyDeletejadi kapan" klo mo baik sekalian yah ... + source codenya uga
Hai Akbar, maaf krn sudah membuat kamu kecewa.
Deletehmm kalo lagi diburu deadline jd bikin ga bisa nulis coding berarti tuh tugas gak jadi2 dong mpe skg?. hehehe
Tp sekali lg maaf ya Akbar. Peace ^_^
di coding splash xml itu ga ada open tag nya yah ( <... ) ??
ReplyDeletemisal di bagian :
android:id="@+id/progg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dip"
style="?android:attr/progressBarStyleHorizontal"
/>
harusnya dibagian atas diberi open tag <ProgressBar
cara ngasih gambar di loading seperti contoh mbae di atas gimana ya, maap masih newbie :D
ReplyDeletebalas
hi hi,
Deletesorry to say, codingan android dh lama gw tinggalin jd udah lupa.
yang pasti itu codingan jalan koq.
maafff :(
di form widget ada proggress bar
ReplyDelete