Create a Bar in Android
Ada 3 macam Bar di Android yaitu Progress Bar, Seek Bar dan Rating Bar.
1.
ProgressBar
merupakan indikator visual dari progress operasi. Biasanya Progress
Bar akan tampil ketika kita sedang melakukan proses download.
main.xml
| <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> <ProgressBar android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/progressbar_default" /> <ProgressBar android:layout_width="fill_parent" android:layout_height="wrap_content" style="?android:attr/progressBarStyleHorizontal" android:id="@+id/progressbar_Horizontal" android:max="100" /> </LinearLayout> |
AndroidProgressBar.java
| package android.progressbar; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.widget.ProgressBar; public class AndroidProgressBar extends Activity { ProgressBar myProgressBar; int myProgress = 0; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); myProgressBar=(ProgressBar)findViewById(R.id.progressbar_Horizontal); new Thread(myThread).start(); } private Runnable myThread = new Runnable(){ public void run() { // TODO Auto-generated method stub while (myProgress<100){ try{ myHandle.sendMessage(myHandle.obtainMessage()); Thread.sleep(1000); } catch(Throwable t){ } } } Handler myHandle = new Handler(){ @Override public void handleMessage(Message msg) { // TODO Auto-generated method stub myProgress++; myProgressBar.setProgress(myProgress); } }; }; } |

Gambar 1 Progrees Bar
2. Seek Bar
Sebuah
SeekBar merupakan perpanjangan dari ProgressBar yang menambahkan
draggable. Pengguna dapat drag kiri atau kanan untuk mengatur tingkat
progress dengan menggunakan tombol panah.
| <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> <SeekBar android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_margin="10px" android:id="@+id/seekbar" android:max="100" android:progress="50" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/seekbarvalue" android:text="50" /> </LinearLayout> |
AndroidSeekbar.java
| package android.seekbar; import android.app.Activity; import android.os.Bundle; import android.widget.SeekBar; import android.widget.TextView; public class AndroidSeekbar extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); SeekBar seekBar = (SeekBar)findViewById(R.id.seekbar); final TextView seekBarValue = (TextView)findViewById(R.id.seekbarvalue); seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){ public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { // TODO Auto-generated method stub seekBarValue.setText(String.valueOf(progress)); } public void onStartTrackingTouch(SeekBar seekBar) { // TODO Auto-generated method stub } public void onStopTrackingTouch(SeekBar seekBar) { // TODO Auto-generated method stub } }); } } |

3. Rating Bar
Sebuah
RatingBar merupakan perpanjangan dari SeekBar dan ProgressBar yang
menunjukkan rating bintang. Pengguna dapat menyentuh / drag atau
menggunakan tombol panah untuk mengatur rating bila menggunakan
ukuran standar RatingBar.
main.xml
| <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> <RatingBar android:layout_width="wrap_content" android:layout_height="wrap_content" style="?android:attr/ratingBarStyleIndicator" android:id="@+id/ratingbar_Indicator" /> <RatingBar android:layout_width="wrap_content" android:layout_height="wrap_content" style="?android:attr/ratingBarStyleSmall" android:id="@+id/ratingbar_Small" android:numStars="20" /> <RatingBar android:layout_width="wrap_content" android:layout_height="wrap_content" style="?android:attr/ratingBarStyle" android:id="@+id/ratingbar_default" /> </LinearLayout> |
AndroidRatingBar.java
| package android.ratingbar; import android.app.Activity; import android.os.Bundle; import android.widget.RatingBar; import android.widget.Toast; public class AndroidRatingBar extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); final RatingBar ratingBar_Small = (RatingBar)findViewById(R.id.ratingbar_Small); final RatingBar ratingBar_Indicator = (RatingBar)findViewById(R.id.ratingbar_Indicator); final RatingBar ratingBar_default = (RatingBar)findViewById(R.id.ratingbar_default); ratingBar_default.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener(){ public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromUser) { // TODO Auto-generated method stub ratingBar_Small.setRating(rating); ratingBar_Indicator.setRating(rating); Toast.makeText(AndroidRatingBar.this, "rating:"+String.valueOf(rating), Toast.LENGTH_LONG).show(); }}); } } |

Gambar
3 Rating
Bar
_netoya_
Posted at 12:26AM May 18, 2010 by nety ozora in General | Comments[1]
kak mau nanya, itu emulatornya yang dipake atau avd nya tipe apa? n download dmana?
Posted by latief on April 10, 2011 at 06:43 AM WIT #