2010-07-02 3 views
1

У меня есть ListView, который заполняется из курсора (используя rawQuery), который мне нужен, чтобы получить текст выбранного элемента нажатием.Получение текста из Listview

protected void onListItemClick(ListView l, View v, int position, long id) { 
    super.onListItemClick(l, v, position, id); 
    Intent mViewChaptersIntent = new Intent(this, ViewWeb.class); 
    String s = ((TextView) l.getItemAtPosition(position)).getText().toString(); // Tried this, didn't work. 
    mViewChaptersIntent.putExtra("extension", s); 
    mViewChaptersIntent.putExtra("itmClicked", String.format("%d", id)); 
    startActivity(mViewChaptersIntent); 
} 

Но я не уверен в правильном способе сделать это. Функция getItemAtPosition, которую я видел в других сообщениях, кажется, не работает ...

ответ

1

getItemAtPosition() должен вернуть вам Cursor, который расположен в указанной строке. Затем вам нужно позвонить getString(), чтобы получить любой столбец, который вы ищете.

+0

Это похоже на это. Для справок: 'String s = (String) ((Курсор) l.getItemAtPosition (position)). GetString (2);' – AndyD273

+0

Как может быть быстрее без генериков? – ktingle

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