Android ListView 删除数据

在前面一章节 Android ListView 删除数据 中我们学会了如何删除 ListView 中的数据

本章我们就来学习如何清空 ListView

ListView 清空数据

清空 ListView 数据有两种方式

  1. 调用 remove() 方法一项一项的删除
  2. 调用 clear() 方法一次性删除

肯定不用犹豫,直接选后者,一项一项删除多累啊

下面我们就写一个 demo 来演示下这两种方法


  1. 复用 Android ListView 添加插入数据 中最后的 demo

  2. 修改 TalkAdapter.java 添加一个 clear() 方法

    public void clear() {
    
        if(mData != null) {
            mData.clear();
        }
        notifyDataSetChanged();
    }
    
  3. 修改布局 activity_main.xml 添加 清空数据 按钮

    <?xml version="1.0" encoding="utf-8" ?>
    <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"
        android:padding="8dp" 
        android:orientation="vertical" >
    
        <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="wrap_content"
            android:padding="8dp" 
            android:orientation="horizontal" >
    
            <Button
                android:id="@+id/btn_add"
                android:layout_height="wrap_content"
                android:layout_width="wrap_content" 
                android:text = "添加" />
    
            <Button
                android:id="@+id/btn_clear"
                android:layout_height="wrap_content"
                android:layout_width="wrap_content" 
                android:text = "清空" />
    
        </LinearLayout>
    
        <include  
                android:id="@+id/talk_empty"  
                layout="@layout/listview_empty"/>
    
        <ListView
            android:id="@+id/listview"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />
    </LinearLayout>
    
  4. 修改 MainActivity.java 添加按钮的点击事件

    package cn.twle.android.listviewcrud;
    
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    
    import android.widget.ListView;
    import android.widget.Button;
    import android.widget.Toast;
    import android.widget.AdapterView;
    
    import android.view.View;
    
    import java.util.LinkedList;
    import java.util.List;
    
    public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    
        private ListView listview;
        private TalkAdapter talkAdapter = null;
        private List<TalkBean> mData = null;
        private int flag = 0;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
    
            setContentView(R.layout.activity_main);
    
            listview = (ListView) findViewById(R.id.listview);
    
            View listview_empty = findViewById(R.id.talk_empty);  
            listview.setEmptyView(listview_empty);
    
            mData = new LinkedList<TalkBean>();
            talkAdapter = new TalkAdapter((LinkedList<TalkBean>) mData,MainActivity.this);
    
            listview.setAdapter(talkAdapter);
    
            Button btn_add = findViewById(R.id.btn_add);
    
            Button btn_clear = findViewById(R.id.btn_clear);
    
            btn_add.setOnClickListener(this);
            btn_clear.setOnClickListener(this);
        }
    
        public void onClick(View v) {
            switch (v.getId()){
                case R.id.btn_add:
                    talkAdapter.add(new TalkBean(R.drawable.golf,"你好 " + flag));
                    flag++;
                    break;
    
                case R.id.btn_clear:
                    talkAdapter.clear();
                    break;
            }
        }
    }
    

Android 基础教程

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.