Aplikasi sederhana ini digunakan untuk menampilkan beberapa gambar. Langsung saja kita buat aplikasinya.
1. Buat project Android di Eclipse
2. Kita buat main.xml seperti di bawah ini
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Galeri Buah-buahan" /> <Gallery android:id="@+id/gallery1" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <ImageView android:id="@+id/imageView1" android:layout_width="320dp" android:layout_height="250dp" android:scaleType="fitXY"/> </LinearLayout>
3. Copy-kan beberapa gambar di res–>drawable-mdpi seperti gambar di bawah ini
4. Tambahkan file xml dengan nama attrs.xml di res –> values, ketikkan kodenya seperti di bawah ini:
<?xml version="1.0" encoding="utf-8"?> <resources> <declare-styleable name="Gallery1"> <attr name="android:galleryItemBackground"></attr> </declare-styleable> </resources>
5. Ketikkan kode program di MainActivity.java seperti di bawah ini
package com.gallery; import android.os.Bundle; import android.app.Activity; import android.content.Context; import android.content.res.TypedArray; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.BaseAdapter; import android.widget.Gallery; import android.widget.ImageView; import android.widget.Toast; public class MainActivity extends Activity { Integer[] imageIDS = {R.drawable.jeruk, R.drawable.kates, R.drawable.lemon, R.drawable.manggis, R.drawable.pisang, R.drawable.strobery}; Gallery gallery; ImageView image; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); gallery = (Gallery) findViewById(R.id.gallery1); image = (ImageView) findViewById(R.id.imageView1); gallery.setAdapter(new ImageAdapter(this)); gallery.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View v, int position, long id) { Toast.makeText(getBaseContext(), "pic" + (position + 1) + " selected", Toast.LENGTH_SHORT).show(); image.setImageResource(imageIDS[position]); } }); } public class ImageAdapter extends BaseAdapter{ Context context; int itemBackground; public ImageAdapter(Context c){ context = c; TypedArray a = obtainStyledAttributes(R.styleable.Gallery1); itemBackground = a.getResourceId(R.styleable.Gallery1_android_galleryItemBackground, 0); a.recycle(); } @Override public int getCount() { return imageIDS.length; } @Override public Object getItem(int position) { return position; } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { ImageView imageView; if(convertView == null){ imageView = new ImageView(context); imageView.setImageResource(imageIDS[position]); imageView.setScaleType(ImageView.ScaleType.FIT_XY); imageView.setLayoutParams(new Gallery.LayoutParams(150, 120)); }else { imageView = (ImageView) convertView; } imageView.setBackgroundResource(itemBackground); return imageView; } } }
6. Run dan lihat hasilnya
Screenshoot hasilnya seperti di bawah ini
Selamat mencoba, semoga bermanfaat