zoukankan      html  css  js  c++  java
  • eatwhatApp开发实战(六)

      上次,我们为app添加了本地存储的功能,但会发现一但退出app则存储的商家集合就消失,但其实本地已经存储了记录只是没去读取罢了。

    接下来我们来实现这个功能。

        /**
         * 获取本地数据
         */
        private void getLocalData() {
            //创建或者打开数据库
            createOrOpenDataBase();
            // 定义一个集合用来存放我们要的几个店名
            shopList = new ArrayList<Shop>();
            //游标 获取数据库表单上的项
            Cursor cursor = db.query("shopinfo", null, null, null, null, null, null, null);
            while(cursor.moveToNext()){
                                    //第一列 就是之前定义的店名
                String shopName = cursor.getString(1);
                Shop Shop = new Shop(shopName);
                shopList.add(Shop);
            }
        }

      在init()开头调用此方法,这样就可以实现如果app本地有数据,则显示数据,没有则创建新的数据库和对应表单。

      接下来将本地数据的删除功能添加进去。

         /**
    	 * 删除数据
    	 * @param shop
    	 */
    	private void removeLocalData(Shop shop){
    		//跟据shopName查询并删除
    		db.delete("shopinfo", "shopName = ?", new String[]{shop.getName()});
    	}
    

      修改确认键的点击监听:

      builder.setPositiveButton("确认", new DialogInterface.OnClickListener() {
    				
        @Override
        public void onClick(DialogInterface dialog, int which) {
    					
          //删除本地数据
          removeLocalData(shopList.get(position));
          //移除集合内的该项
          shopList.remove(position);
          //刷新
    	 shopAdapter.notifyDataSetChanged();
        }
      });
    

      这样本地读取数据和删除功能就得到实现。

  • 相关阅读:
    翻转单词顺序
    java layout 表格项增加、删除、修改
    Hadoop学习之HBase
    protected的一些功能
    hdu4431 Mahjong
    kendo ui gird温馨提示(使用本地数据) 一个
    TOP计划猿10最佳实践文章
    Java高级应用(一个)-文件夹监控服务
    BSD介绍
    获取编译学习笔记 (十三)—— 外部中断
  • 原文地址:https://www.cnblogs.com/superdo/p/5081044.html
Copyright © 2011-2022 走看看