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
- 2017年3月10日,周结(三),开源框架初使用
- 2017年3月24日,周结(五),学生信息管理系统继续改进以及一些框架的使用
- 2006年3月7日 三
- 2017年10月3日测试
- 2017年3月6日开始,2017年10月23日回头看!
- 2017年3月3日,周结(二),几种UI控件的使用
- 2017年6月16日,周结(十七),一些简单的算法题(三)
- 10月3日.
- 2005年8月31日 三
- 向量内积–笔记2017年10月3日
- /*2017年1月10日*/日志
- 2017年2月10日
- 2017年8月10日 星期四
- 2017年10月7日
- 2017年10月08日 上学
- 2017年10月11日笔记
- 2017年10月12日笔记
- 2017年10月12日笔记
- Keras + LSTM + 词向量 情感分类/情感分析实验
- Cesium原理篇:3D Tiles(1)渲染调度
- spring 上传多图片
- URL传值时含有特殊字符(+#等)
- 费舍尔方法(Fisher's method)的数学原理解释
- 2017年3月10日,周结(三),开源框架初使用
- 论文笔记:Grid Long Short-Term Memory
- 496. Next Greater Element I
- 第五届蓝桥杯【省赛试题8】蚂蚁感冒
- 程序化广告实战分享系列
- 最简洁完整的Java基础教程(基本语法、继承、接口、多态)
- JavaScript【彩票】
- 出师表 ---诸葛孔明
- 廖雪峰python教程阅读之循环