2013-07-02 1 views
0

У меня есть код ниже, но onItemClickListener не работает, может кто-нибудь помочь мне в чем проблема? Я также добавил Override и setClickable, но проблема все еще существует.Android-приложение ListAdapter не работает с функцией onItemClickListener

public class Show extends Activity implements AdapterView.OnItemClickListener { 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    requestWindowFeature(Window.FEATURE_NO_TITLE); 
    setContentView(R.layout.show); 

...//Some codes in here 

adapter = new MyAdapter(this, hadithList); 

    list = (ListView) findViewById(R.id.list); 

    list.setAdapter(adapter); 

    list.setClickable(true);  

    list.setOnItemClickListener(new OnItemClickListener() { 

     public void onItemClick(AdapterView<?> parent, View view, int position,  long id) { 


      Toast.makeText(getApplicationContext(), "clickedItemString", Toast.LENGTH_SHORT).show(); 

    }); 

} 
+0

сообщение адаптера класс – marshallino16

ответ

1

В вашем Activity, вы первый реализации AdapterView.OnItemClickListener и чем вы устанавливаете AdapterView.OnItemClickListener ваших ListView. Вы должны выбрать один из методов, а не оба.

Если вы решили заступиться реализации OnItemClickListener, вы должны добавить к вашей Activity:

@Override 
public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
    Toast.makeText(getApplicationContext(), "clickedItemString", Toast.LENGTH_SHORT).show(); 
} 

и добавить к вашей ListView: list.setOnItemClickListener(this);

Если вы не реализуете OnItemClickListener просто сделать:

list.setOnItemClickListener(new OnItemClickListener() { 

     @Override 
     public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
      Toast.makeText(getApplicationContext(), "clickedItemString", Toast.LENGTH_SHORT).show(); 

     } 
    }); 

Это должно работать должным образом.

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

  • Нет связанных вопросов^_^