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

В ListView не работает OnItemClickListener - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Import jtds-1.3.1 http://www.cyberforum.ru/android-dev/thread1422743.html
Как сделать правильный импорт в AndroidStudio? Если можно, то очень подробно распишите, ни разу не импортировал jar.... Спасибо =)
Программирование Android Google maps, построение маршрута между двумя точками кто может поделиться рабочим примером построения маршрута между двумя точками для android studio? http://www.cyberforum.ru/android-dev/thread1422641.html
Plus and Plus Программирование Android
Описание: Plus and Plus - это математическая игра. Вам предстоит получить путем сложение заданное число. Цель игры - очистить поле от цифр. Возрастные ограничения: Для всех возрастных групп....
Смена фрагментов из контейнера жестом Программирование Android
Здравствуйте. Есть активити, в котором расположен container, два textview, кнопка. В контейнере по умолчанию расположен первый fragment. По нажатию кнопки в контейнере появляется 2 fragment. Но Хочу...
Программирование Android Не убирается меню в андроид http://www.cyberforum.ru/android-dev/thread1422552.html
Такой вопрос. При нажатии на аппаратную клавишу меню и клике на какой-нибудь пункт, меню не убирается само. Например, при нажатии на пункт меню запускается новая Activity, затем если закрыть эту...
Программирование Android Ссылка на пример кода с Navigation Drawer и вкладками SlidingTabs Привет! Подскажите, пожалуйста, ссылку на пример или разбор кода, где одновременно используются и Navigation Drawer, и вкладки под ActionBar. Только обязательно, чтобы фрагменты под вкладками... подробнее

Показать сообщение отдельно
edogaafx
0 / 0 / 0
Регистрация: 04.03.2014
Сообщений: 42

В ListView не работает OnItemClickListener - Программирование Android

16.04.2015, 19:05. Просмотров 1157. Ответов 2
Метки (Все метки)

Здравствуйте,
Впервые попался на такую проблему, что в ListView не работает OnItemClickListener.
При клике на элемент списка, в будущем должен будет проводиться переход на фрагмент, где будет выведена доп. информация, но это в будущем, так как я застрял в самом начале.
В методе я просто стараюсь в логах вывести, как метод выполняется и Toast с позицией, на которую сделан клик.
Вот примеры кода.
Часть фрагмента, который работает со списком
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setHasOptionsMenu(true);
    }
 
@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        Log.i(TAG, "onCreateView");
        View view = inflater.inflate(R.layout.fragment_event_list, container, false);
        
        //swipeRefreshLayout = (SwipeRefreshLayout)view.findViewById(R.id.swiperefresh);
        
        listView = (ListView)view.findViewById(android.R.id.list);
        
        listView.setClickable(true);
        listView.setItemsCanFocus(true);
        
        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
 
            @Override
            public void onItemClick(AdapterView<?> parent, View view,
                    int position, long id) {
                Log.i(TAG, "onItemClick");
                Toast.makeText(context, position,
                        Toast.LENGTH_SHORT).show();
            }
        });
                
        return view; 
    }
 
@Override
    public void onViewCreated(View view, Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);
        Log.i(TAG, "onViewCreated");
        
        dbHelper = new DatabaseHelper(getActivity());
        try {
            dbHelper.open();
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        list = dbHelper.getEvents();
        eventAdapter = new EventAdapter(list);
        setListAdapter(eventAdapter);
        
        dbHelper.close();
 
}
 
public class EventAdapter extends ArrayAdapter<Event> {
        
        public EventAdapter(ArrayList<Event> e) {
            super(getActivity(), android.R.layout.simple_list_item_1, e);
        }
        
        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            Log.i(TAG, "getView");
            if(convertView == null) {
                convertView = getActivity().getLayoutInflater().inflate(R.layout.event_list_item, null);
            }
            Event event = getItem(position);
            //System.out.println("Event object in getView() " + event);
            //System.out.println("Event name: " + event.getName());
            //eventImageView = (ImageView)view.findViewById(R.id.event_list_image);
            eventNameTextView = (TextView)convertView.findViewById(R.id.event_list_name);
            eventNameTextView.setText(event.getName());
            eventNameTextView.setFocusable(false);
            eventStartDateTextView = (TextView)convertView.findViewById(R.id.event_list_date);
            eventStartDateTextView.setText(event.getStartDate()); 
            eventStartDateTextView.setFocusable(false);
            
            return convertView;
        }
        
    }
Пробовал "оживить" клики по списку с помощью всяких рекомендации, которыъ искал в гугле по данной проблеме
eventNameTextView.setFocusable(false);
listView.setClickable(true);
listView.setItemsCanFocus(true);

Ничего не помогает

Вот вьюшки.
Сам список:
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<!-- <android.support.v4.widget.SwipeRefreshLayout -->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:descendantFocusability="blocksDescendants" >
    <ListView 
        android:id="@android:id/list"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:descendantFocusability="blocksDescendants"
         />
</RelativeLayout> 
 
<!-- </android.support.v4.widget.SwipeRefreshLayout> -->
И его элементы:
XML
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
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" >
 
        <!-- <ImageView
            android:id="@+id/event_list_image"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:contentDescription="@string/app_name" /> -->
 
        <TextView
            android:id="@+id/event_list_name"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:focusableInTouchMode="false"
            android:clickable="false"
            android:focusable="false" />
 
        <TextView
            android:id="@+id/event_list_date"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:clickable="false"
            android:focusable="false"
            android:focusableInTouchMode="false" />
 
</LinearLayout>
android:focusableInTouchMode="false"
android:clickable="false"
android:focusable="false"

тоже использовал ищ рекомендаций, что гугл подскозал.
Как никак, всё без успехов.

Буду благодарен за помощь.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru