Android ListView 删除 item

Android ListView 删除 item实现效果主要使用方法是,remove之后在刷新界面adapter里面的代码publicclassMyAdapterextendsBaseAdapter{privateList<ListBean>mDatas=null;privateContextmContext=null;publicMyAdapter(Contextcontext,List<ListBean>datas){

大家好,又见面了,我是你们的朋友全栈君。

实现效果

Android ListView 删除 item

主要使用方法 是, remove 之后在刷新界面

adapter 里面的代码

public class MyAdapter extends BaseAdapter {
    private List<ListBean> mDatas = null;
    private Context mContext = null;

    public MyAdapter(Context context, List<ListBean> datas) {
        mDatas = datas;
        mContext = context;
    }

    @Override
    public int getCount() {
        return mDatas.size();
    }

    @Override
    public Object getItem(int position) {
        return mDatas.get(position);
    }

    @Override
    public long getItemId(int position) {
        return position;
    }

    @Override
    public View getView(final int position, View convertView, ViewGroup parent) {
        ViewHolder holder;
        if (convertView == null) {
            holder = new ViewHolder();
            convertView = LayoutInflater.from(mContext).inflate(R.layout.list_base_item, null);
            holder.image = convertView.findViewById(R.id.image);
            holder.title = convertView.findViewById(R.id.title);
            holder.content = convertView.findViewById(R.id.content);
            holder.delete = convertView.findViewById(R.id.btn);

            holder.delete.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    mDatas.remove(position);
                    notifyDataSetChanged();
                }
            });
            convertView.setTag(holder);
        } else {
            holder = (ViewHolder) convertView.getTag();
        }
        holder.image.setImageResource(mDatas.get(position).getImgId());
        holder.title.setText(mDatas.get(position).getTitle());
        holder.content.setText(mDatas.get(position).getContent());
        holder.delete.setText(mDatas.get(position).getDelete());

        return convertView;

    }

    public final class ViewHolder {
        ImageView image;
        TextView title;
        TextView content;
        Button delete;
    }

}

activity 里面的代码

public class ListBaseAdapterActivity extends AppCompatActivity {

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.simple_adapter_activity_layout);

        final List<ListBean> list = new ArrayList<>();
        ListBean listBean = new ListBean(R.mipmap.one, "标题头", "内容内容", "删除");
        list.add(listBean);
        ListBean listBean1 = new ListBean(R.mipmap.ic_launcher, "今天", "内容内容", "删除");
        list.add(listBean1);
        ListBean listBean2 = new ListBean(R.mipmap.image, "明天", "内容内容", "删除");
        list.add(listBean2);
        ListBean listBean3 = new ListBean(R.mipmap.photo, "后天", "内容内容", "删除");
        list.add(listBean3);

        final ListView listView = findViewById(R.id.list);
        final MyAdapter adapter = new MyAdapter(ListBaseAdapterActivity.this, list);
        // 设置分割线
        listView.setDivider(new ColorDrawable(Color.RED));
        // 设置分割线的宽度
        listView.setDividerHeight(5);
        
        listView.setAdapter(adapter);

    }
}

 

demo 地址

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/160603.html原文链接:https://javaforall.net

(1)
上一篇 2022年7月16日 下午11:36
下一篇 2022年7月16日 下午11:36


相关推荐

  • Java 泛型擦除_java中泛型的使用

    Java 泛型擦除_java中泛型的使用java泛型的残酷现实就是:在泛型代码内部,无法获得任何有关泛型参数类型的信息。在使用泛型时,任何具体的类型都被擦除,唯一知道的是你在使用一个对象。比如:List<String>和List<Integer>在运行事实上是相同的类型。他们都被擦除成他们的原生类型,即List。snippet1:1packagecom.cognizant.ch15…

    2026年4月13日
    3
  • List如何去除重复元素

    List如何去除重复元素1 方法一 publicstatic Listlist for inti 0 i list size 1 i for intj list size 1 j i j if list get list size 1 i for intj list size 1 j

    2026年3月18日
    2
  • 哥德尔定理证明中的标号(11)-(16)——哥德尔读后之26

    哥德尔定理证明中的标号(11)-(16)——哥德尔读后之26哥德尔定理证明中的标号 11 16 哥德尔读后之 26 读哥德尔又遇到理解的困难 这个阅读受困的时段 正是因老桂大寿建立的几个科哲微信群讨论东方思维西方思维 还有辩证逻辑非辩证逻辑等等观念的时段 对科哲所知有限 但对思维与逻辑应该还有点感觉 东方和西方思维的分划 我感觉是一个伪分划 思维如果有地缘之分 那其实不是因地缘在划分思维 而是因地缘在划分语言 东西方人因地缘之故 有各种不同的自然语言 而显得思维似乎是各不相同 逻辑分为辩证和非辩证也是一个奇怪的分划 其实是一个非学术性 带有点实用意义的分划 这

    2026年1月20日
    2
  • VMware选择VMnet8模式连接外网的方法

    VMware选择VMnet8模式连接外网的方法介绍VMware连接外网的方法,解决虚拟机不能连网的问题。

    2022年6月3日
    82
  • JavaScript数组合并,参数解构方法

    JavaScript数组合并,参数解构方法JavaScript 两个数组数据合并 vararr1 1 2 3 vararr2 4 5 6 1 利用对象参数解构 arr1 push arr2 console log arr1 1 2 3 4 5 6 arr2 ES6 新语法 类似 Python 的位置参数的简写 将 arr2 分解成单个位置参数传入 pu

    2026年3月18日
    2
  • 登录注册HTML页面代码「建议收藏」

    登录注册HTML页面代码「建议收藏」一、注册创建register.html文件,录入如下代码<!DOCTYPEhtml><html><head><metacharset=”UTF-8″><title></title><styletype=”text/css”>form{width:100%;

    2022年6月10日
    89

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号