listview控件是项目开发中最常用的空间之一,我将慢慢推出关于listview的一系列的文章,先从最简单的,系统自带的listview开始吧!
先上效果图:
activity_one.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" > <ListView android:id="@+id/listview" android:layout_width="match_parent" android:layout_height="match_parent" /> </LinearLayout>
OneActivity.java
package com.example.listviewdemo; import java.util.ArrayList; import java.util.List; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ArrayAdapter; import android.widget.ListAdapter; import android.widget.ListView; import android.widget.Toast; //activity实现OnItemClickListener接口,这样就不用另外定义一个类实现了 public class OneActivity extends Activity implements OnItemClickListener { private ListView listview; // 模拟数据 private List<String> dataList = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_one); dataList = new ArrayList<String>(); // 初始化数据 for (int i = 0; i < 20; i++) { dataList.add("第" + i + "条数据"); } // 设置adapter(所在的activity,使用的显示样式,数据源) ListAdapter adapter = new ArrayAdapter<String>(OneActivity.this, android.R.layout.simple_list_item_1, dataList); listview = (ListView) findViewById(R.id.listview); listview.setAdapter(adapter); // 绑定item点击事件 listview.setOnItemClickListener(this); } // 这是实现OnItemClickListener接口必须实现的方法,在这里进行item的点击事件的处理,最常用的是position,可以根据position获得点击的item的数据 @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { Toast.makeText(OneActivity.this, "点击了第" + position + "条数据", 0).show(); } }
这样就可以实现最简单的listview了,如有疑问,请留言