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();
        }
      });
    

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

  • 相关阅读:
    Splay专题总结
    UVa12657
    ZOJ3772
    POJ1743
    高斯消元模板
    python使用chrom登陆微博
    mysql常用数据库(表)命令
    mysql索引
    mysql建表的时候,时间戳的选用
    php 金额每三位添加一个逗号
  • 原文地址:https://www.cnblogs.com/superdo/p/5081044.html
Copyright © 2011-2022 走看看