最近几天把第一行代码第三章部分学完了。
第三章主要讲了安卓中基本的几种控件,四种布局,自定义控件的写法,ListView和RecyclerView的写法,最后使用RecyclerView写了一个模拟对话框的project。
学习的过程中发现网上有相当一部分安卓前端框架,提供基本组件供使用。网页前端、手机APP前端需要掌握的细节真的是太多了,其中的一些思想也有共通之处。
安卓实际上有多种布局形式,常有“安卓六大布局”等文章,这本书讲了线性布局、相对布局、帧布局、百分比布局,但事实上第四个并不常用,除此之外还有表格布局,网格布局等,最常用的还是前两种。
学到“自定义控件”这里的时候,愈发觉着天下框架一家亲。SAPUI5的也是xml的格式的,做起应用的感觉和安卓有点相似,但相对之下,在WEBIDE上使用SAPUI5这套框架进行开发真心是太恶心了。也许是官方没有合理的文档的缘故,做起和后端数据库相连接的东西全都是一头雾水。在SAP实习的几个月里,大部分精力都投入在这上面,回想一下稍微有些不值。
ListView和RecyclerView学习的时候,需要熟练掌握adapter(对listView recyclerView进行初始化)、viewHolder(内部类,存储缓存信息)、xxxLayoutManager(设定recyclerView的布局)这几种概念和用法,注意继承时相应方法的重写,详情还是看代码吧。RecycleView是ListView的升级版,定义更加清楚,运用更加灵活,除了能够自定义布局外,还能方便地对每个子view中的组件注册事件等,使用时记得在build.gradle文件中添加一行:
compile 'com.android.support:recyclerview-v7:26.1.0'
最后在做UIBestPractice时,找到了一个还不错的UI收集站下载了气泡图:http://588ku.com/sucai/1523018.html PS:每天只能免费下载一个素材。
学会了用画图的方式压缩图片:打开图片-“调整图片大小”;注意重新保存会失去png透明属性;
学会了在AS中用内嵌的draw9patch对图片拉伸方式进行定义:把图片导入AS - Create 9 patch file - 删除原来图片 - 双击图片进行编辑,左上两条线表示拉伸时拉伸的部分,右下两条线表示填充内容的范围。
最后把代码全部放到了git上了:
https://github.com/lancecm/Android
最近用git是越来越熟练了。这个repo加上了带有图片的readme瞬间就觉得高大上了,是个好主意。