你的位置:首页 > 软件开发 > 操作系统 > 简单天气应用开发

简单天气应用开发

发布时间:2016-02-23 18:00:09
断断续续重写了原来项目的代码,新的应用可以添加多个城市,同时用SQLite实现本地缓存的功能。   在重写的项目中,我没有使用Storyboard,而是使用代码来构建主页面。  要实现添加多个页面,同时每个页面还要可以下拉刷新的功能,我目前想到的就是用一个scrollview ...

简单天气应用开发

  断断续续重写了原来项目的代码,新的应用可以添加多个城市,同时用SQLite实现本地缓存的功能。

简单天气应用开发

 

  在重写的项目中,我没有使用Storyboard,而是使用代码来构建主页面。

  要实现添加多个页面,同时每个页面还要可以下拉刷新的功能,我目前想到的就是用一个scrollview在后面充当垫板,每个城市页面再附在上面。用拖控件的方式的话,多个scrollview叠在一起,后面的控件就无法交互了。也许是我对控件理解不够,总是无法解决,所以最后决定用代码写主界面,xib构建单独的城市页面。

  在实现添加页面功能的过程中,印象最深的就是viewWithTag,添加一个tag就可以随意的取出之前的页面。

  在原来的项目中也有本地缓存的功能,不过那个项目只有一个页面,所以直接使用写文件的方式存储JSON数据。在现在的项目中,有了多个页面需要缓存,单纯的写文件明显不够用,查了网上的资料后决定使用SQLite来存储数据。

  使用SQLite的过程中,最主要的问题就是如何把二进制文件存入数据库。现在有两种方法,一是存文件的路径,二是直接写入。存文件路径不会影响数据库效率,但是我觉得有点繁琐,每次查询天气得到的数据还得命名写入沙盒。直接写入会影响效率,但是天气的JSON数据很小,我觉得影响不大。

  存入JSON需要在表中建立blob字段,JSON转换为NSData,insert语句中对应位置用‘?’代理,然后使用bind语句绑定,例如:

1 NSData *data = [NSJSONSerialization dataWithJSONObject:weatherdic options:NSJSONWritingPrettyPrinted error:nil];2 NSString *sql = [NSString stringWithFormat:@"INSERT INTO t_weather VALUES (%ld,?);",cityid];3 sqlite3_stmt *savestmt;

原标题:简单天气应用开发

关键词:

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录