怎样使用ListView?
package com.mengmeng.android_listview;import android.os.Bundle;import android.app.Activity;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.AdapterView;import android.widget.AdapterView.OnItemClickListener;import android.widget.ArrayAdapter;import android.widget.ListView;import android.widget.SimpleAdapter;import android.widget.Toast;public class MainActivity extends Activity implements OnItemClickListener { private ListView mListView; private ArrayAdapter mArray_Adapter; private SimpleAdapter mSimpleAdapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mListView = (ListView) findViewById(R.id.listView); //载入数据源 String[] str = {"大眼萌1","大眼萌2","大眼萌3","大眼萌4","大眼萌5"}; mArray_Adapter = new ArrayAdapter (this, android.R.layout.simple_expandable_list_item_1, str); mListView.setAdapter(mArray_Adapter); mListView.setOnItemClickListener(this); } //监听 @Override public void onItemClick(AdapterView arg0, View arg1, int arg2, long arg3) { String text = mListView.getItemAtPosition(arg2)+""; Toast.makeText(this, text, Toast.LENGTH_SHORT).show(); }}
simpleAdapter的使用
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mListView = (ListView) findViewById(R.id.listView); getData(); mSimpleAdapter = new SimpleAdapter (this, list, R.layout.list_item, new String[] {"text","image"}, new int[] {R.id.text,R.id.image}); mListView.setAdapter(mSimpleAdapter); } private List
使用OnScollListener() notifyDataSetChanged()
@Overridepublic void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) { // TODO Auto-generated method stub }@Overridepublic void onScrollStateChanged(AbsListView view, int scrollState) { if(scrollState == SCROLL_STATE_FLING){//用力划一下 Map map = new HashMap (); map.put("text", "正在加入"+i++); map.put("image", R.drawable.ic_launcher); list.add(map); mSimpleAdapter.notifyDataSetChanged(); Toast.makeText(this, "正在滚动...", Toast.LENGTH_SHORT).show(); }else if(scrollState == SCROLL_STATE_IDLE){//停止滚动 }else if(scrollState == SCROLL_STATE_TOUCH_SCROLL){//正在滚动 }