20171127

周末差不多一半时间在睡觉,所以早上起来感觉还行。吃点前几天买的红糖糍粑,味道不错。跑路去公司,听说这周要完成两个按钮的功能?我管你,先重构再说。不过react这种思路还是不是很熟悉啊,虽然理论上只需要考虑view和对应的viewmodel之间的初始化和刷新关心什么的,脑筋有点转不过来。顺手写了个基类用于提供基础的绑定功能,然后每个ui组件都有个binder类用来指定这种关系(稍微有点多啊)。activity整个视图用一个binder,它只干一件事情,把它的view model的按需交给子组件来让它们自行初始化。这个理论上可以写成通用的,但我还不知道kotlin的异构容器怎么写所以暂时算了。再说里面都是泛型的lambda,感觉会很难写。下午两点左右写完,好像有点bug,旧view model上的数据变动还是会传到绑定到新view model上的view。还好我一开始就在注册接口留了个名字参数,默认使用uuid生成的,把它换成当前的类名,然后在基类检测到view model变化时清掉就好。虽然这意味着一个类对同一实例的同一字段不能重复注册多个监听器。弄好之后差不多五点了,点个海南鸡饭,然后花三十分钟把这周要做的两个按钮弄完,吃完饭划划水七点半照常跑路。回来懒得打游戏,看了半天直播准备睡觉了。

评论

热门博文