Android: как настроить события нажатия на ListView? - PullRequest
0 голосов
/ 24 мая 2010

Я хочу открыть новый вид или действие, когда нажимаю на элемент в своем ListView.

В настоящее время у меня есть список ресторанов, и когда я нажимаю на конкретный ресторанЯ хочу, чтобы он открыл еще один экран, на котором будет отображаться его адрес, карта Google и т. Д.

Мне нужна помощь в том, чтобы знать, как устанавливать события нажатия на элементы в списке.На данный момент у меня нет базы данных предметов, это просто строки.Может ли кто-нибудь помочь мне довести меня до этой стадии?

Большое спасибо.

package com.example.androidrestaurant;

import android.os.Bundle;import android.widget.ArrayAdapter;import android.widget.TextView;import android.app.ListActivity;

открытый класс Dundrum extends ListActivity {TextView selection;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);


    setListAdapter(new ArrayAdapter<String>(this,
            android.R.layout.simple_list_item_1, DUNDRUM));
    getListView().setTextFilterEnabled(true);

  }

статическая конечная строка

Ответы [ 2 ]

3 голосов
/ 10 июля 2011

Вам нужно сделать так:

// Store your listview into local variable
ListView lv = getListView();

lv.setTextFilterEnabled(true);

// Bind onclick event handler
lv.setOnItemClickListener(new OnItemClickListener() {
              public void onItemClick(AdapterView<?> parent, View view,
                  int position, long id) {

                      // Put in your code here, what you wanted trigger :)
              }
});
1 голос
/ 24 мая 2010

Если вы используете ListView в ListActivity, переопределите onListItemClick().В противном случае используйте setOnItemClickListener() с ListView.В любом случае вам дается позиция, которая является индексом вашего массива.

См. здесь для примера проекта.

...