千家信息网

Android中ListView怎么使用

发表于:2024-10-13 作者:千家信息网编辑
千家信息网最后更新 2024年10月13日,这篇文章主要讲解了"Android中ListView怎么使用",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Android中ListView怎么使用"吧
千家信息网最后更新 2024年10月13日Android中ListView怎么使用

这篇文章主要讲解了"Android中ListView怎么使用",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Android中ListView怎么使用"吧!

一、具体思路

1、创建Listview控件

2、创建子布局

创建数据库

主方法调用数据库继承类且初始化数据库,写入数据

MyDatabaseHelper databaseHelper = new MyDatabaseHelper(this,"Co.db",null,1);

SQLiteDatabase db = databaseHelper.getWritableDatabase();

SQLiteDatabase db2 = databaseHelper.getReadableDatabase();

3、写入

ContentValues values = new ContentValues();values.put("Code","1");values.put("Name","Admin");values.put("Post","32");values.put("Tel","123456789");db.insert("employee",null,values);values.clear();values.put("Code","2");values.put("Name","Admin1");values.put("Post","22");values.put("Tel","23342e");db.insert("employee",null,values);

4、读取

Cursor cursor = db2.query("Employee",null,null,null,null,null,null);arrayList = new ArrayList<>();if (cursor.moveToFirst()) {    do {        name = cursor.getString(cursor.getColumnIndex("Name"));        code = cursor.getString(cursor.getColumnIndex("Code"));        post = cursor.getString(cursor.getColumnIndex("Post"));        tel = cursor.getString(cursor.getColumnIndex("Tel"));        System.out.println("查找到的值:"+ name +"---"+ code +"---"+ post +"---"+ tel);        Employee employee=new Employee(name, tel, post, code);        arrayList.add(employee);    }while (cursor.moveToNext());}

5、创建对象,构造器,GETSET方法

6、创建Adapter

二、具体实施

1、适配器

lv.setAdapter(new BaseAdapter() {    @Override    public int getCount() {        return arrayList.size();    }    @Override    public Object getItem(int position) {        return null;    }    @Override    public long getItemId(int position) {        return 0;    }    @Override    public View getView(int position, View convertView, ViewGroup parent) {        View view;        if (convertView==null){            view=View.inflate(getBaseContext(),R.layout.listitem,null);        }else{            view=convertView;        }        Employee ee=(Employee) arrayList.get(position);        TextView eename=view.findViewById(R.id.name);        TextView eedianhua=view.findViewById(R.id.dianhua);        TextView eezhiwei=view.findViewById(R.id.zhiwei);        TextView eekahao=view.findViewById(R.id.kahao);        eename.setText(ee.getName());        eedianhua.setText(ee.getTel());        eezhiwei.setText(ee.getPost());        eekahao.setText(ee.getCode());        return view;    }});

2、数据库

public class MyDatabaseHelper extends SQLiteOpenHelper {    public static final String CREATE_Employees = "create table employee ("            + "Code text, "            + "Name text unique, "            + "Post text, "            + "Tel text)";    private Context mContext;    public MyDatabaseHelper(Context context, String name, SQLiteDatabase.CursorFactory            factory, int version) {        super(context, name, factory, version);        mContext = context;    }    @Override    public void onCreate(SQLiteDatabase db) {        db.execSQL(CREATE_Employees);        Toast.makeText(mContext, "Create succeeded", Toast.LENGTH_SHORT).show();    }    @Override    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {    }}

3、对象

package com.example.a4_7_1_lv;public class Employee {    private String name;    private String tel;    private String post;    private String code;    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public String getTel() {        return tel;    }    public void setTel(String tel) {        this.tel = tel;    }    public String getPost() {        return post;    }    public void setPost(String post) {        this.post = post;    }    public String getCode() {        return code;    }    public void setCode(String code) {        this.code = code;    }    public Employee(String name, String tel, String post, String code) {        this.name = name;        this.tel = tel;        this.post = post;        this.code = code;    }    public Employee() {    }}

4、等等等等

三、案例分享

activity_main.xml

    

listitem.xml

                                                                                    

MyDatabaseHelper.java

package com.example.a4_7_1_lv;import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteOpenHelper;import android.widget.Toast;public class MyDatabaseHelper extends SQLiteOpenHelper {    public static final String CREATE_Employees = "create table employee ("            + "Code text, "            + "Name text unique, "            + "Post text, "            + "Tel text)";    private Context mContext;    public MyDatabaseHelper(Context context, String name, SQLiteDatabase.CursorFactory            factory, int version) {        super(context, name, factory, version);        mContext = context;    }    @Override    public void onCreate(SQLiteDatabase db) {        db.execSQL(CREATE_Employees);        Toast.makeText(mContext, "Create succeeded", Toast.LENGTH_SHORT).show();    }    @Override    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {    }}

MainActivity.java

package com.example.a4_7_1_lv;import androidx.appcompat.app.AppCompatActivity;import android.content.ContentValues;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;import android.os.Bundle;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.ListView;import android.widget.TextView;import java.util.ArrayList;public class MainActivity extends AppCompatActivity {    private ListView lv;    private MyDatabaseHelper databaseHelper;    private SQLiteDatabase db;    private SQLiteDatabase db2;    private ArrayList arrayList;    private String name;    private String code;    private String post;    private String tel;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        lv = findViewById(R.id.list);    }    @Override    protected void onStart() {        super.onStart();        MyDatabaseHelper databaseHelper = new MyDatabaseHelper(this,"Co.db",null,1);        db = databaseHelper.getWritableDatabase();        db2 = databaseHelper.getReadableDatabase();        DBInsert();        Cursor cursor = db2.query("Employee",null,null,null,null,null,null);        arrayList = new ArrayList<>();        if (cursor.moveToFirst()) {            do {                name = cursor.getString(cursor.getColumnIndex("Name"));                code = cursor.getString(cursor.getColumnIndex("Code"));                post = cursor.getString(cursor.getColumnIndex("Post"));                tel = cursor.getString(cursor.getColumnIndex("Tel"));                System.out.println("查找到的值:"+ name +"---"+ code +"---"+ post +"---"+ tel);                Employee employee=new Employee(name, tel, post, code);                arrayList.add(employee);            }while (cursor.moveToNext());        }        lv.setAdapter(new BaseAdapter() {            @Override            public int getCount() {                return arrayList.size();            }            @Override            public Object getItem(int position) {                return null;            }            @Override            public long getItemId(int position) {                return 0;            }            @Override            public View getView(int position, View convertView, ViewGroup parent) {                View view;                if (convertView==null){                    view=View.inflate(getBaseContext(),R.layout.listitem,null);                }else{                    view=convertView;                }                Employee ee=(Employee) arrayList.get(position);                TextView eename=view.findViewById(R.id.name);                TextView eedianhua=view.findViewById(R.id.dianhua);                TextView eezhiwei=view.findViewById(R.id.zhiwei);                TextView eekahao=view.findViewById(R.id.kahao);                eename.setText(ee.getName());                eedianhua.setText(ee.getTel());                eezhiwei.setText(ee.getPost());                eekahao.setText(ee.getCode());                return view;            }        });    }    private void DBInsert() {        ContentValues values = new ContentValues();        values.put("Code","1");        values.put("Name","Admin");        values.put("Post","32");        values.put("Tel","123456789");        db.insert("employee",null,values);        values.clear();        values.put("Code","2");        values.put("Name","Admin1");        values.put("Post","22");        values.put("Tel","23342e");        db.insert("employee",null,values);        values.clear();        values.put("Code","4");        values.put("Name","Admin13");        values.put("Post","2sda2");        values.put("Tel","233asd42e");        db.insert("employee",null,values);        values.clear();        values.put("Code","Code");        values.put("Name","Name");        values.put("Post","Post");        values.put("Tel","Tel");        db.insert("employee",null,values);    }}

Employee.java

package com.example.a4_7_1_lv;import androidx.appcompat.app.AppCompatActivity;import android.content.ContentValues;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;import android.os.Bundle;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.ListView;import android.widget.TextView;import java.util.ArrayList;public class MainActivity extends AppCompatActivity {    private ListView lv;    private MyDatabaseHelper databaseHelper;    private SQLiteDatabase db;    private SQLiteDatabase db2;    private ArrayList arrayList;    private String name;    private String code;    private String post;    private String tel;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        lv = findViewById(R.id.list);    }    @Override    protected void onStart() {        super.onStart();        MyDatabaseHelper databaseHelper = new MyDatabaseHelper(this,"Co.db",null,1);        db = databaseHelper.getWritableDatabase();        db2 = databaseHelper.getReadableDatabase();        DBInsert();        Cursor cursor = db2.query("Employee",null,null,null,null,null,null);        arrayList = new ArrayList<>();        if (cursor.moveToFirst()) {            do {                name = cursor.getString(cursor.getColumnIndex("Name"));                code = cursor.getString(cursor.getColumnIndex("Code"));                post = cursor.getString(cursor.getColumnIndex("Post"));                tel = cursor.getString(cursor.getColumnIndex("Tel"));                System.out.println("查找到的值:"+ name +"---"+ code +"---"+ post +"---"+ tel);                Employee employee=new Employee(name, tel, post, code);                arrayList.add(employee);            }while (cursor.moveToNext());        }        lv.setAdapter(new BaseAdapter() {            @Override            public int getCount() {                return arrayList.size();            }            @Override            public Object getItem(int position) {                return null;            }            @Override            public long getItemId(int position) {                return 0;            }            @Override            public View getView(int position, View convertView, ViewGroup parent) {                View view;                if (convertView==null){                    view=View.inflate(getBaseContext(),R.layout.listitem,null);                }else{                    view=convertView;                }                Employee ee=(Employee) arrayList.get(position);                TextView eename=view.findViewById(R.id.name);                TextView eedianhua=view.findViewById(R.id.dianhua);                TextView eezhiwei=view.findViewById(R.id.zhiwei);                TextView eekahao=view.findViewById(R.id.kahao);                eename.setText(ee.getName());                eedianhua.setText(ee.getTel());                eezhiwei.setText(ee.getPost());                eekahao.setText(ee.getCode());                return view;            }        });    }    private void DBInsert() {        ContentValues values = new ContentValues();        values.put("Code","1");        values.put("Name","Admin");        values.put("Post","32");        values.put("Tel","123456789");        db.insert("employee",null,values);        values.clear();        values.put("Code","2");        values.put("Name","Admin1");        values.put("Post","22");        values.put("Tel","23342e");        db.insert("employee",null,values);        values.clear();        values.put("Code","4");        values.put("Name","Admin13");        values.put("Post","2sda2");        values.put("Tel","233asd42e");        db.insert("employee",null,values);        values.clear();        values.put("Code","Code");        values.put("Name","Name");        values.put("Post","Post");        values.put("Tel","Tel");        db.insert("employee",null,values);    }}

感谢各位的阅读,以上就是"Android中ListView怎么使用"的内容了,经过本文的学习后,相信大家对Android中ListView怎么使用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

0