±×¸®µå ºä

¾ÆÀÌÄÜÀ» °ÝÀÚ ¸ð¾çÀ¸·Î È­¸é Àüü¿¡ Ç¥½Ã ÇÑ´Ù.
¾ÆÀÌÄÜÀ» Ŭ¸¯Çϸé Toast¿¡ ¾ÆÀÌÄÜÀÇ À§Ä¡¸¦ Ç¥½Ã ÇÑ´Ù.



±×¸®µå ºä À̺¥Æ® Çڵ鷯 »ý¼º

OnItemClickListenerÀ» ÀÓÆ÷Æ® ÇÑ´Ù.

import android.widget.AdapterView.OnItemClickListener;

±×¸®µå  ºä »ý¼º

1) ±×¸®µå ºä Ç׸ñ Áغñ
¹®ÀÚ¿­ Ç׸ñÀ» ¸¸µé¶§´Â ArrayAdapter¸¦ »ç¿ëÇÏÁö¸¸ ¹®ÀÚ¿­ ÀÌ¿ÜÀÇ Ç׸ñÀ» ¸¸µé¶§´Â ¾î´ðÅ͸¦ ¸¸µé ÇÊ¿ä°¡ ¾ø´Ù. ArrayList¸¦ »ç¿ëÇÏ¿© Bitmap ¹è¿­ _list¸¦ ¸¸µç´Ù.

2) ±×¸®µå ºä »ý¼º
Ưº°ÇÏ°Ô ¸®½ºÆ® ºä¿Í ´Ù¸¥°Å¶ó¸é ¾î´ðÅÍ¿Í À̺¥Æ® Çڵ鷯ÀÌ´Ù.
¾îÅÇÅÍ :  MyAdapter
À̺¥Æ® Çڵ鷯 :  setOnItemClickListener
    LinearLayout _layout;
    private ArrayList<Bitmap> _list;
   
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
       
        _layout = new LinearLayout(this);
        _layout.setOrientation(LinearLayout.VERTICAL);  
       
        /*
        setContentView(R.layout.activity_main);

        if (savedInstanceState == null) {
            getSupportFragmentManager().beginTransaction()
                    .add(R.id.container, new PlaceholderFragment())
                    .commit();
        }
        */
       
        //±×¸®µå ºä Ç׸ñ ÁØ
        _list = new ArrayList<Bitmap>();
        Resources res = getResources();
        _list.add(BitmapFactory.decodeResource( res,  android.R.drawable.ic_menu_add));
        _list.add(BitmapFactory.decodeResource( res,  android.R.drawable.ic_menu_delete));
        _list.add(BitmapFactory.decodeResource( res,  android.R.drawable.ic_menu_call));
        _list.add(BitmapFactory.decodeResource( res,  android.R.drawable.ic_menu_camera));
        _list.add(BitmapFactory.decodeResource( res,  android.R.drawable.ic_menu_day));
        _list.add(BitmapFactory.decodeResource( res,  android.R.drawable.ic_menu_directions));
        _list.add(BitmapFactory.decodeResource( res,  android.R.drawable.ic_menu_edit));
        _list.add(BitmapFactory.decodeResource( res,  android.R.drawable.ic_menu_help));
        _list.add(BitmapFactory.decodeResource( res,  android.R.drawable.ic_menu_info_details));

        //±×¸®µå ºä »ý¼º
        GridView gv = new GridView(this);
        gv.setBackgroundColor(Color.WHITE);
        gv.setNumColumns(4);
        gv.setAdapter(new MyAdapter());
       
        _layout.addView(gv);
        setContentView(_layout);
       
        //±×¸®µå ºä À̺¥Æ® »ý¼º
        gv.setOnItemClickListener(new OnItemClickListener()
        {
            public void onItemClick(AdapterView<?> parent, View v, int position, long id)
            {
                Toast.makeText(    getApplicationContext(), ""+position, Toast.LENGTH_SHORT).show();
            }
        });           
    } 

À̺¥Æ® ó¸®

onCreate( )¿¡ ³ª¿Ô´ø ¼Ò½ºÀÌ´Ù.

±×¸®ºäÀÇ ¾ÆÀÌÄÜÀ» Ŭ¸¯Çϸé Toast·Î ±×¸®µåÀÇ À§Ä¡¸¦ Ç¥½ÃÇÑ´Ù.

±×¸®µå ºäÀÇ À§Ä¡¸¦ Ç¥½Ã ÇÒ¶§ ""+position¿Í °°ÀÌ ÇØ¾ß ÇÑ´Ù.
±×³É position¸¸ ¸Å°³º¯¼ö·Î ³Ñ±â¸é Å©·¡½¬ µÈ´Ù.
Toast.makeText(    getApplicationContext(), ""+position, Toast.LENGTH_SHORT).show();

 public class MainActivity extends ActionBarActivity
{
         ......................
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        ................
        GridView gv = new GridView(this);
        ................
        //±×¸®µå ºä À̺¥Æ® »ý¼º
        gv.setOnItemClickListener(new OnItemClickListener()
        {
            public void onItemClick(AdapterView<?> parent, View v, int position, long id)
            {
                Toast.makeText(    getApplicationContext(), ""+position, Toast.LENGTH_SHORT).show();
            }
        });  


MyAdapter ¸¸µé±â

MyAdapter´Â _list °ü¸®¸¦ ÆíÇÏ°Ô Çϱâ À§ÇØ MainActivity Ŭ·¡½º ¾È¿¡ ¸¸µé¾ú´Ù.
º°µµÀÇ ÆÄÀÏ¿¡ MyAdapter¸¦ ¸¸µé¾î¼­ _list¸¦ ³Ñ°Üµµ µÈ´Ù.

public class MainActivity extends ActionBarActivity
{
    private class MyAdapter extends BaseAdapter
    {

Ä¿½ºÅÒ ¾î´ðÅ͸¦ ¸¸µé·Á¸é BaseAdapter Ŭ·¡½º¸¦ »ó¼ÓÇÑ´Ù. À̶§ ´ÙÀ½ ¸Þ¼­µå¸¦ ¿À¹ö¶óÀ̵å ÇØ¾ß ÇÑ´Ù.

int getCount( )
Bitmap getItem(int pos)
long getItemId(int pos)
View getView(int pos, View convertView, ViewGroup parent)

    private class MyAdapter extends BaseAdapter
    {

        @Override
        public int getCount()
        {
            return _list.size();
        }
       
        @Override
        public Bitmap getItem(int pos)
        {
            return _list.get(pos);
        }
       
        @Override
        public long getItemId(int pos)
        {
            return pos;
        }

        public View getView(int pos, View convertView, ViewGroup parent)
        {
            if (convertView == null)
            {
                ImageView iv = new ImageView(MainActivity.this);
                iv.setLayoutParams(new GridView.LayoutParams(72, 92));
                iv.setPadding(0, 0, 0, 20);
                iv.setImageBitmap(_list.get(pos));
                convertView = iv;
            }
           
            return convertView;
          }       
      }   

¾Èµå·ÎÀ̵忡¼­ Toast »ç¿ë

Å佺Ʈ(Toast)¶õ Æ˾÷À» ÅëÇØ À¯Àú¿¡°¡ ƯÁ¤ ¸Þ¼¼Áö¸¦ ¾Ë¸®´Â °ÍÀÌ´Ù.

ÀÏÁ¤ ½Ã°£ ÈÄ ÀÚµ¿À¸·Î ¾ø¾îÁö¸ç ±âÁ¸ ÀÛ¾÷ÀÇ Æ÷Ä¿½º »¯Áö ¾Ê´Â´Ù.

Toast toast = Toast.makeText(this, "¸Þ¼¼Áö ÀÔ·Â.", Toast.LENGTH_SHORT);
toast.show();

¼Ò½º : MainActivity.java