2017年3月10日,周结(三),开源框架初使用

来源:互联网 发布:艾利丹尼森 知乎 编辑:程序博客网 时间:2024/06/03 15:26

这周收获颇多,但是总是感觉自己学到的东西好多都没有记住,即使记了挺多笔记,但是好像并不能阻止遗忘的脚步.可能还是因为笔记做的不够即使,以后要注意这方面的问题.

说说这周的总结吧:

先引用一段话,也不知道是哪个前辈总结的:

所有的第三方库能实现的功能,我们使用原生的API只要花时间和精力也能实现,但是可能会出现很多的 bug 而且会花费较多的时间和精力,而且性能也不一定很好,第三方的库会帮我们封装底层的一些代码,避免我们做重复多余易出错的事情,让我们专注于业务逻辑,所以学习任何一个第三方库都将是简单的,我们不应心生畏惧。
这是我在查一些关于学习 retrofit 框架时找的资料,虽然我现在也没掌握这个网络请求的框架...但是在看到这句话之后心里瞬间充满信心,对于学习使用框架肯定不会虚,fighting!


本周知识点:
视图的属性:
View.VISIBLE--->可见
View.INVISIBLE--->不可见,但这个View仍然会占用在xml文件中所分配的布局空间,不重新layout 
View.GONE---->不可见,但这个View在ViewGroup中不保留位置,会重新layout,不再占用空间.

LitePal 的初使用

编辑 app/build.gradle 文件,在 dependencies 闭包中添加依赖库:compile'org.litepal.android:core:1.4.1'
在配置文件中声明android:name="org.litepal.LitePalApplication"
配置 litepal.xml 文件:在 app/src/main目录下新建一个 assets 目录,然后在 assets 目录下创建一个 litepal.xml 文件
调用 LitePal.getDatabase() 方法数据库就会自动创建完成
如果想要向 Book 表中添加一个列,直接修改 Book 类中的代码,添加字段即可.更新数据库需要修改 version 中 value 属性(需为整数)
使用 LitePal 添加数据,new一个对象(实体类需继承 DataSupport),最后 save 一下即可
使用 LitePal 删除数据,DataSupport.deleteAll(),传入想要删除的数据类型,以及各种限制条件
使用 LitePal 更新数据,new一个对象,需要修改的属性传进对象中,调用updateAll即可(需传入欲修改的数据的值)
使用LitePal 查询数据:


调用 TextUtils.isEmpty() 传进去一个参数。只要这个参数为空或者为 null,都会返回真。

解析和处理服务器返回的数据:
先判断一下返回的 json 数据是否为空,使用 JSONArray 和 JSONObject 将数据解析出来,然后组装成实体类对象,再调用 save() 方法将数据存储到数据库中


retrofit初级入门

首先添加依赖库,以及要添加网络使用权限


接下来第一步定义接口
先弄明白要访问的接口到底是什么然后要分析一下 baseUrl 和后面要添加的字段信息,哪些是必选哪些是非必选一定要弄清楚,弄明白是 post 还是get 请求,必须添加的字段需要使用 @Query 注解.


接下来是这一大块东西,创建一个 retrofit 实例,通过在 builder 后面添加.baseUrl 来得到访问的接口.addConvertFactory 来增加返回值为 Gson 的支持,requestServers 采用的是 Java 的动态代理模式.
通过 request.getResponse 传入我们请求的键值对的值,这里我们通过异步网络请求得到我们需要的 gson 数据(其实retrofit学的真的有点懵)

学生信息管理系统V1.0

第一次使用应用启动页面


通过做这个系统得到几点心得:
1.写代码之前一定分析好各种功能以及流程;
2.分析好所需要的页面,控件;
3,各种命名需要尽量规范;


0 0