android中ListView的简单用法

来源:互联网 发布:软件测试 英文翻译 编辑:程序博客网 时间:2024/06/11 10:11

  安卓中ListView控件是一个非常重要、有用的控件。

  首先ListView需要数据源,一般我们在实际的项目中会与数据库结合起来使用。但是做一个小的测试就没有必要使用数据库中的数据了,我们使用集合类List存放数据。

  集合的定义如下:

 

public List<String> getScore(){    List<String> list = new ArrayList<String>();    for(int i = 0;i < 30;i++){        list.add("hxy"+i);    }    return list;}
这是一个方法,用来向集合中添加一组数据,之后我们就使用这组数据。

之后我们在xmlz文件中添加ListView控件,代码很简单:

<ListView    android:id="@+id/list_view"    android:layout_width="wrap_content"    android:layout_height="wrap_content"></ListView>在java代码中向ListView填充数据,这时候我们要使用适配器Adapt,废话不多说,直接贴代码:
package com.example.administrator.listview;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.AdapterView;import android.widget.ArrayAdapter;import android.widget.ListView;import android.widget.Toast;import java.util.ArrayList;import java.util.List;public class MainActivity extends AppCompatActivity {     private ListView listView;     private ArrayAdapter<String> adapter;    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        listView = (ListView)findViewById(R.id.list_view);      //  listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);//设置ListView的选中模式        listView.setChoiceMode(ListView.CHOICE_MODE_SINGLE);//单选        adapter = new ArrayAdapter<String>(MainActivity.this,android.R.layout.simple_list_item_single_choice,getScore());        listView.setAdapter(adapter);//将数据源绑定在listView        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {            @Override            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {                Toast.makeText(MainActivity.this,"==>"+adapter.getItem(position),Toast.LENGTH_SHORT).show();            }        });    }    public List<String> getScore(){        List<String> list = new ArrayList<String>();        for(int i = 0;i < 30;i++){            list.add("hxy"+i);        }        return list;    }}
我使用的是真机调试,屏幕截图如下:

添加了点击事件,点击的时候会通过Toast提示框显示

2 0