[英]Android ListView Click Listener does not work
我找到了關於將圖標用於ListView項的出色教程。 http://www.debugrelease.com/2013/06/24/android-listview-tutorial-with-images-and-text/
我完全按照它進行操作,並且ListView布局看起來很棒! 但是...我無法讓onclick偵聽器用於ListView。 我只是停留在ListView屏幕上。 這是放置偵聽器的Main.java代碼。 我正在使用Deepak的Item和ItemAdapter類(來自上面的鏈接),沒有任何更改。 我只更改了他的Model類,以放置自己的圖標文件名。 我想念什么?
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.ListView;
public class Main extends Activity {
ListView listView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Model.LoadModel();
listView = (ListView) findViewById(R.id.listView);
String[] ids = new String[Model.Items.size()];
for (int i= 0; i < ids.length; i++){
ids[i] = Integer.toString(i+1);
}
ItemAdapter adapter = new ItemAdapter(this,R.layout.row, ids);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new OnItemClickListener(){
@Override
public void onListItemClick(ListView l, View v, int position, long id){
Intent i;
switch (position) {
case 0:
i = new Intent(this, AnglesConvert.class);
startActivity(i);
break;
case 1:
i = new Intent(this, AreaConvert.class);
startActivity(i);
break;
}
});
}
感謝Ankur,我如上所述修改了Main.java文件。 現在,我在所有內容下都出現了紅色花體。 不知道我在做什么錯。
你需要打電話
listview.setOnClickListener(onListItemClick()) ;
后
listview.setAdapter(adapter) ;
使用尚未將偵聽器附加到它,請使用此
listview.setOnItemClickListener(new onItemClickListener(){
@Override
protected void onListItemClick(){
//Do stuff
}
});
為了使onListItemClick
起作用。 使用ListActivity
擴展您的課程。
public class Main extends ListActivity {
參考標准示例
http://developer.android.com/guide/topics/ui/layout/listview.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.