listview添加onItemClickListener
MainActivity.java
package com.wyl.listview04; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.AbsListView; import android.widget.AbsListView.OnScrollListener; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ListView; import android.widget.SimpleAdapter; import android.widget.Toast; public class MainActivity extends Activity implements OnItemClickListener,OnScrollListener{ SimpleAdapter adapter; List<Map<String,Object>> list; ListView listview ; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.list);//以list.xml为主界面 /* * 实例化listview等 */ listview = (ListView) findViewById(R.id.listview); adapter = new SimpleAdapter(this, getData(), R.layout.textview, new String[]{"pic","txt"}, new int[]{R.id.imgview,R.id.textview}); // new SimpleAdapter(this, getData(), R.layout.textview, new String[]{"img","textview01"}, new int[]{R.id.imgview,R.id.textview}); listview.setAdapter(adapter); listview.setOnItemClickListener(this); // listview.setOnScrollListener(this); } private List<Map<String, Object>> getData() { list = new ArrayList<Map<String,Object>>(); for(int i=0;i<50;i++){ Map<String,Object> map = new HashMap<String,Object>(); map.put("pic", R.drawable.yl); map.put("txt", "wyl "+i*i); System.out.println("====="+map.get("txt")); list.add(map); } return list; } @Override public void onItemClick(AdapterView<?> arg0, View arg1, int position, long arg3) { String location = "位置:"+listview.getItemIdAtPosition(position); String l = " 内容,"+listview.getItemAtPosition(position); Toast.makeText(this, location+l, Toast.LENGTH_SHORT).show(); } @Override public void onScroll(AbsListView arg0, int arg1, int arg2, int arg3) { // TODO Auto-generated method stub Toast.makeText(this, "onScroll方法", Toast.LENGTH_SHORT).show(); } @Override public void onScrollStateChanged(AbsListView arg0, int state) { // TODO Auto-generated method stub switch (state) { case SCROLL_STATE_FLING: Map<String,Object> map = new HashMap<String, Object>(); map.put("pic", R.drawable.ic_launcher); map.put("txt", "这是增加想"); list.add(map); adapter.notifyDataSetChanged();//通知主线程界面刷新数据 Toast.makeText(this, "SCROLL_STATE_FLING", Toast.LENGTH_SHORT).show(); break; case SCROLL_STATE_IDLE: Toast.makeText(this, "SCROLL_STATE_IDLE", Toast.LENGTH_SHORT).show(); break; case SCROLL_STATE_TOUCH_SCROLL: Toast.makeText(this, "SCROLL_STATE_TOUCH_SCROLL", Toast.LENGTH_SHORT).show(); break; default: break; } } }