2010-08-07 5 views
0

Я пытаюсь сделать изображения кликабельными, чтобы при нажатии они отправили пользователя на другую страницу или ссылку.Android: В Gridview, как сделать изображения кликабельными

Как я могу достичь этого? В настоящее время каждая строка в GridView имеет 2 Buttons. Как он узнает, какой элемент в GridView щелкнут так, чтобы он выполнял определенное действие, определенное для элемента, который был нажат.

Спасибо за помощь!

Это в моем изображении класса адаптера:

// create a new ImageView for each item referenced by the Adapter 
public View getView(int position, View convertView, ViewGroup parent) { 
    ImageView imageView; 
    if (convertView == null) { // if it's not recycled, initialize some attributes 
     imageView = new ImageView(mContext); 
     imageView.setAdjustViewBounds(true); 
     // imageView.setScaleType(ImageView.ScaleType.FIT_CENTER); 
     imageView.setPadding(4, 8, 4, 8); 
    } else { 
     imageView = (ImageView) convertView; 
    } 

    imageView.setImageResource(mThumbIds[position]); 
    return imageView; 
} 

// references to our images 
private Integer[] mThumbIds = { 
     R.drawable.menu_about,R.drawable.menu_episodes 
    }; 
} 

ответ

0

Вы можете рассмотреть вопрос об использовании класса ImageButton, чтобы сделать это для вас. Его кнопка, но вместо скучного серого градиента вместо этого вы помещаете изображение! Andriod ImageButton Docs Оттуда вы можете использовать прослушиватель кликов так же, как и с обычной кнопкой.

2

Просто добавьте слушателя в GridView

GridView gridView = (GridView) findViewById(R.id.gridview); 
    gridView.setAdapter(new ImageAdapter()); 

    gridView.setOnItemClickListener(new OnItemClickListener() 
    { 
     public void onItemClick(AdapterView parent, 
     View v, int position, long id) 
     { 
      data.aktueltBilledeNr = position; 
      Toast.makeText(getBaseContext(), "Viser billede " + (position + 1), Toast.LENGTH_SHORT).show(); 
      finish(); 
      //startActivity(new Intent(Resultatsoversigt_akt.this, Teoriproeveaktivitet2.class)); 
     } 
    }); 
0

первую очередь найти положение кнопок (здесь изображения), а затем использовать корпус переключателя, чтобы когда-либо, что выполнение проектно сказать ...

GridView gridView = (GridView) findViewById(R.id.gridview);  
gridView.setAdapter(new ImageAdapter());  
gridView.setOnItemClickListener(new OnItemClickListener() {  
    public void onItemClick(AdapterView parent,View v,int position,long  id)    { 
     switch(position) { 
     case 0: 
      Intent intent=new Intent(this,targer.class); 
      StartActivity(intent); 
      break; 
     case 1: 
      break;  
     . 
     . 
     . 

     default: 
      break; 
     } 
    } 
}); 

 Смежные вопросы

  • Нет связанных вопросов^_^