обращаться с длинным щелчком по меню - PullRequest
0 голосов
/ 08 мая 2011

Мне нужно обрабатывать выбранную строку в списке при длинном щелчке по строке, но, поскольку я использую меню, я не могу переопределить onclicklistener. Я пытаюсь сделать это:

listView.setOnLongClickListener(new OnLongClickListener() {
    @Override
    public boolean onLongClick(View v) {
        taskPosition = listView.getSelectedItemPosition();
        return true;
    }
});

но это не работает. Кто-нибудь может мне помочь?

1 Ответ

2 голосов
/ 08 мая 2011

я получил значение listView.getSelectedItemPosition ();равно -1

Конечно.Ряды обычно не выбираются.Строки выбираются только в том случае, если пользователь использует указывающее устройство (D-pad, трекбол и т.1008 *

Нет, нет.Вы либо используете контекстные меню , либо , вы используете прослушиватель с длинным щелчком мыши с виджетом.Вы не используете оба.

Если вы пытаетесь определить, какая строка была нажата из onContextItemSelected(), , вот пример проекта , который продемонстрирует это вам, если ваш адаптерэто ArrayAdapter.Если вы используете CursorAdapter, , то вот другой пример проекта , который продемонстрирует это для вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...