文章来源:中国软工亚洲指挥中心(Steins;Gate)
共同做者:纪神,爵爷,老板,小男孩(按首字拼音排序)
责任编辑:爵爷android
终于开始了正式的开发工做。鉴于团队以前多少有点开发经验,不少界面写起来并无什么阻滞,但因为咱们都没有深刻系统学习过Android架构和API,因此在有些细节上老是会有不到位的地方。git
就拿笔者来讲,虽然能照葫芦画瓢实现指定的界面和效果,可是总会在一些细微的地方卡住。如经过ViewPager实现SwipeView的解决方案中,ViewPager会时刻保留两个Fragment的View(此处存疑,只是实际操做的状况,并无查阅过源码),其余的Fragment的view会被destroy掉。被destroyView的Fragment全部的控件都被“下架”,可是实例会被保留,那么对于EditText和RadioButton之类的控件而言,其内容是不会被保存的,除非单独设置变量保存或者放在savedInstanceState中。笔者在这里就卡了好久,又复习了一遍Activity和Fragment的生命周期,而且简单查看了一下ViewPager的源码,才解决了相关的问题。github
在实现新闻列表的时候,因为须要上拂加载更多的效果,考虑现有开源方案太过庞大,因此笔者就手写了一个实现。由于新API强迫症,使用了RecyclerView而不是ListView。RecyclerView效率更高,功能更强大,操做也更灵活,可是少了诸多限制也就少了一些方便。如RecyclerView没有OnItemClickListener,笔者就往Adapter里扔了个回调,监听每一个条目的点击事件。又如RecyclerView没有默认分隔线,这是能够理解的,由于要同时实现ListView、GridView以及瀑布流的效果。关于添加分割线的方案,鸿洋大大给出了一篇很是精彩的博文Android RecyclerView 使用彻底解析 体验艺术般的控件,可是因为代码仍是过多,因此笔者本身用代码模拟.9图片实现了分隔线效果,就过程而言要简洁的多(固然功能不够强大,具体见Android使用RecyclerView分隔线问题)。算法
相似的问题还有不少,虽然都不算是大坑,可是有些地方仍是挺绊脚的。如今尽可能克制不去过于关注细节,先把大框架作出来,再进行优化工做。数据库
贴出下一周的任务安排:微信
老板:架构