Android控件之ListView(初识)

ListView 控件可使用四种不同视图显示项目。通过此控件,可将项目组成带有或不带有列标头的列,并显示伴随的图标和文本。

ListView有四种模式:

其作用是添加选择按钮框。

设置单选框

Lv.setChoiceMode(ListView.CHOICE_MODE_SINGLE);

设置普通模式

 Lv.setChoiceMode(ListView.CHOICE_MODE_NONE);

 

设置多选模式

Lv.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);

设置多选模式

Lv.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);

后两个多选模式,暂时还没有了解两者的区别。

创建数据源代码Mydata文件

package com.example.a13468.mydemo12_listview;

/**
 * 添加数据源
 */

import java.util.ArrayList;
import java.util.List;

public class Mydata {

    public  Mydata(){

    }
    public static List<String> getDataSource(){
        List<String>list=new ArrayList<String>();
        list.add("成都");
        list.add("泸州");
        list.add("上海");
        list.add("杭州");
        list.add("西安");
        list.add("广州");
        list.add("北京");
        list.add("成都");
        list.add("泸州");
        list.add("上海");
        list.add("杭州");
        list.add("西安");
        list.add("广州");
        list.add("北京");
        list.add("成都");
        list.add("泸州");
        list.add("上海");
        list.add("杭州");
        list.add("西安");
        list.add("广州");
        list.add("北京");
        return list;
    }
}

MainActivity.java文件

创键适配器,和数据源,以及使用setOnItemLongClickListener对ListView进行长按监听

package com.example.a13468.mydemo12_listview;

import android.app.Activity;
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.List;

public class MainActivity extends Activity {
    private ListView Lv;
    //创建适配器
    private ArrayAdapter<String> adapter;
    //创建数据源
    private List<String> data=null;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Lv=findViewById(R.id.Lv);

        //给数据源赋值
        data=Mydata.getDataSource();
        adapter=new ArrayAdapter<String>(MainActivity.this,
                android.R.layout.simple_list_item_1,data);

        //给每一项添加单选按钮
        Lv.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
        //给每一项添加复选按钮
       // Lv.setChoiceMode(ListView.FOCUSABLES_TOUCH_MODE);
        Lv.setAdapter(adapter);

        //对ListView长按创建监听
        Lv.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
            @Override
            public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {

                Toast.makeText(MainActivity.this, "长按"+data.get(position)+"选项", Toast.LENGTH_SHORT).show();
                return false;
            }
        });


    }
}

猜你喜欢

转载自blog.csdn.net/weixin_42370957/article/details/84145703