近期的练手小项目

前两天,把 mindoc 上发现的那个 bug 修复后,整理了一下手里积累的还可以改进的一些小玩意儿。

头一个当然就是垃圾佬客户端的侧滑菜单布局的改进。这个 App 是日常使用的减压神器,所以优先级排在第一吧。侧滑菜单使用的是 MaterialDrawer,非常出名而且成熟的一个库。但是由于它对于使用场景已经进行过充分调研,以至于用大量的代码堆成型之后,我自己的一些定制化需求的实现要找到最佳切入点成了难事。

我的主要需求之一是,把原来放在菜单列表里的五项功能入口,由于都和登录用户相关,把它们都改作图标的方式移动到账户相关的菜单头部区域中(AccountHeader)。私信和系统提醒分为一类,可以占据 MaterialDrawer 原本为了多用户切换而预留的两个用户头像的位置;剩下的“我的帖子”、“我的收藏”和“浏览历史”,一时不知放到哪里才好,因为已经没有这么多的剩余控件可作鹊巢而供鸠占。只好再三打量 MaterialDrawer 的开放性,发现可以指定自定义的 AccountHeader 布局资源。复制官方原始资源出来,照猫画虎,新增加了三个头像控件上去(之所以没有使用系统的 ImageView 是因为它缺少直接加载 Font Icon 的能力)。跑起来一看,图标和背景颜色过于接近,又连忙把图标的颜色反转了一下。这回看清了,又发现了个小问题:头像控件会把设置给它的图片全部处理成圆形。查看代码也能看到,确实使用了一个遮罩。并不像修改库的源代码,左思右想,最后还是用反射强行把遮罩屏蔽掉了,显示效果完美。剩余一项工作,是要在其中两个入口图标上显示通知 badge。

第二个就是短信转发程序的规则编辑界面的改进。当前的状态的傻大黑粗的样子,作为使用者,哪怕是维护者,也实在看不下眼。修找 Material Design 的相关信息想指导一下一个 Form Dialog 应该如何设计,基本白费劲,中间的差距太大。最后还是对控件的排列以及文字的大小等做了一些微小的工作,看上去比之前协调了不少,暂且罢休。前几天还顺便把开机自启加上了,省得每次重启都惦记着怕漏了可人老师的短信码。

另有一个半大工程,就是 Flutter 版的万赞,暂时还没有提上日程。NND,刚才确认了一下,万赞的后台 shutdown 了……

发表评论

邮箱地址不会被公开。 必填项已用*标注