2012-02-22 4 views
0

Вот мое открытие активности.Android Set ListView OnItemClickListener

public class SettingActivityR extends CommBaseActivity implements OnItemClickListener 

CommBaseActivity класс ручка связи, которая простирается от деятельности

и структура в SettingActivityR содержит имена ListView SeverListView

Я установил эти параметры в активность OnCreate метод

SeverlistView.setAdapter(this.m_adapter); 
    SeverlistView.setClickable(true);//already set it Clickable! 
    SeverlistView.setOnItemClickListener(this); 

и переопределить способ

@Override 
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { 
// TODO Auto-generated method stub 
SeverDataList targetSeverItem=m_adapter.items.get(arg2); 
Log.i("bird","zzz");  
} 

Адаптер отлично работает, но OnItemClickListener не работает вообще. Режим отладки даже не запускается в этом методе. Почему это?

ответ

0

SettingActivityR вместо этого должен расширить ListActivity.

В onCreate() вызов setListAdapter (this.m_adapter);

Здесь метод onListItemClick() должен обрабатывать обратный вызов для вас.

+0

но SettingActivityR не просто ListView, Если мне еще нужно SettingActivityR простиралась от деятельности Как я могу сделать? –

+0

Если ваша активность требует отображения более 1 ListView, в противном случае ListActivity достаточно самодостаточен, вы можете добавить и настроить другие виджеты в соответствии с нормальным. – Maurice

+0

гул .... но я все еще хочу использовать структуру в Activity ... вызывают все действия, которые могут простираться от него ... –

0

Можете ли вы попробовать заменить ваш Adapter с образцом, предоставленным here? Выделите до конца страницы, и вы увидите

String[] countries = getResources().getStringArray(R.array.countries_array); 
setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, countries)); 

Если это работает отлично, но адаптер не, то может быть что-то конкретное, что нужно сделать в адаптере. Не могли бы вы также поделиться своим кодом адаптера?

+0

Я пробовал ... не работает ....; ( –

+0

Нам нужно увидеть больше кода, чтобы иметь возможность помогите вам. Я создал простую «Activity» (не «ListActivity») и попробовал пример в приведенной выше ссылке. Он отлично работал. Я мог видеть «Toast». – curioustechizen

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