Форум программистов, компьютерный форум CyberForum.ru

GridView.setOnItemClickListener не срабатывает при нажатии на итем - Android

Восстановить пароль Регистрация
 
Japanese
 Аватар для Japanese
9 / 9 / 1
Регистрация: 14.11.2010
Сообщений: 121
01.02.2015, 06:15     GridView.setOnItemClickListener не срабатывает при нажатии на итем #1
Java
1
2
3
4
5
6
7
8
gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
 
            @Override
            public void onItemClick(AdapterView<?> parent, View v,
                                    int position, long id) {
                Toast.makeText(MainActivity.this, "OK!", Toast.LENGTH_SHORT).show();
            }
        });
В самой gridview содержатся imageview и textview. Как я понимаю при нажатии на ячейки грида, срабатывает онклик для imageview. Как сделать чтобы срабатывал онклик для ячеек грида??

адаптер:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
public class GridViewAdapter extends ArrayAdapter<ImageItem>  {
    private Context context;
    private int layoutResourceId;
    private ArrayList<ImageItem> data = new ArrayList<ImageItem>();
 
    public GridViewAdapter(Context context, int layoutResourceId,
                           ArrayList<ImageItem> data) {
        super(context, layoutResourceId, data);
        this.layoutResourceId = layoutResourceId;
        this.context = context;
        this.data = data;
    }
 
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        View row = convertView;
        ViewHolder holder = null;
 
        if (row == null) {
            LayoutInflater inflater = ((Activity) context).getLayoutInflater();
            row = inflater.inflate(layoutResourceId, parent, false);
            holder = new ViewHolder();
            holder.imageTitle = (TextView) row.findViewById(R.id.text);
            holder.image = (ImageView) row.findViewById(R.id.image);
            row.setTag(holder);
 
        } else {
            holder = (ViewHolder) row.getTag();
        }
 
        ImageItem item = data.get(position);
        holder.imageTitle.setText(item.getTitle());
        holder.image.setImageBitmap(item.getImage());
 
holder.image.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    System.out.println(v.getId());
    }
});
 
        return row;
    }
 
    static class ViewHolder {
        TextView imageTitle;
        ImageView image;
    }
 
    public synchronized void refreshAdapter(ArrayList<ImageItem> items) {
        data.clear();
        data.addAll(items);
        notifyDataSetChanged();
    }
}
А адаптере онклик срабатывает, но там я не могу получить ид нажатой ячейки грида
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.02.2015, 06:15     GridView.setOnItemClickListener не срабатывает при нажатии на итем
Посмотрите здесь:

Android Действие при нажатии на ссылку
Android ListView: сбивается содержимое ImageView элемента при скроллинге + как сделать выделение пункта списка при нажатии?
Android Как изменить цвет пункта ListView при нажатии на него и сохранять его цвет при проматывании списка?
Android Ошибка при запуске AsyncTask при нажатии на пункт ActionBar
Вылет при нажатии кнопки Android
Android Ошибка при нажатии
Android Какой метод срабатывает при повторном показе фрагмента
Android Ошибка при нажатии на кнопку
Android Studio при нажатии на btn Android
Вылетает приложение при нажатии на кнопку Android
Android Recyclerview при onLongItemClick срабатывает и onItemClick?
Android Итем меню не реагирует на нажатие

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Armagedo
208 / 208 / 60
Регистрация: 22.08.2014
Сообщений: 644
01.02.2015, 10:21     GridView.setOnItemClickListener не срабатывает при нажатии на итем #2
http://jmsliu.com/2444/click-button-...-position.html

Кстати, не самая лучшая идея вешать нового слушателя на view при каждом getView()...
Yandex
Объявления
01.02.2015, 10:21     GridView.setOnItemClickListener не срабатывает при нажатии на итем
Ответ Создать тему
Опции темы

Текущее время: 09:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru