zoukankan      html  css  js  c++  java
  • 给listview添加长时间点击事件(完成删除操作)

    出现的问题是;当长时间点击listview的时候,触发长时间点击事件的同时也会触发点击事件,处理的办法是在长时间点击事件中加上return true;这样就可以很好的解决了。

    给listview天机长时间点击事件:

            public void onActivityCreated(Bundle savedInstanceState) {
                super.onActivityCreated(savedInstanceState);
                final ListView listView = (ListView) getActivity().findViewById(R.id.list_view);
    
                listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
                    @Override
                    public boolean onItemLongClick(AdapterView<?> parent, final View view, final int position, long id) {
                        AlertDialog.Builder builder = new AlertDialog.Builder(view.getContext());
                        final Message[] account = {null};
                        account[0] = alllistmessage.get(position);
    
                        builder.setTitle("是否确定删除此账单???");
                        builder.setMessage("账单内容如下:\n"+"用户: "+account[0].username+"   金额: "+account[0].usermoney+"    类型: "+account[0].userkind+"\n日期: "+account[0].userdata);
                        builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {
    
                                dbOpenMessage.deletebyid(account[0].userevent,account[0].usermoney, account[0].username);
                                alllistmessage.remove(position);
                                adapter.notifyDataSetChanged();
                                Toast.makeText(view.getContext(), "删除该事件成功", Toast.LENGTH_SHORT).show();
                            }
                        });
                        builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {
    
                            }
                        });
                        builder.create().show();
                        return true;
                    }
                });

    这里面包含数据库的相关操作。在对象列表删除相应listview子控件的同时,在数据库也要删除相应的账单信息。

    相应的实验截图如下:

  • 相关阅读:
    eclipse中解决git分支合并冲突
    git 放弃本地修改,强制拉取更新
    廖雪峰Git入门教程
    如何实现Proxifier只代理部分程序
    Proxifier代理工具简介和下载
    Navicat Premium 12.0.18安装与激活
    Teamviewer远程控制
    夜神安卓模拟器下载及简介
    Fiddler2如何对Android应用进行抓包
    谷歌浏览器添加JSON-handle插件
  • 原文地址:https://www.cnblogs.com/dazhi151/p/12301319.html
Copyright © 2011-2022 走看看