2 在 emojiEdit 下面添加多个附加的按钮,用以打开附加键盘。
被坑死:
(1)不用 ADJUST_PAN。在系统软键盘和自定义 emoji,voice 等键盘之间切换的动画极差/,逻辑也极为
复杂。表现为,需要众多逻辑的判断,且当 emoji 键盘显示,切换到系统软键盘的时候,还可以设置延
时任务给 emoji 键盘隐藏,再打开系统软键盘,虽逻辑没问题,但是有延迟,不流畅。更坑的是当系统
软键盘处于打开状态,需要切换到 emoji 键盘的时候,没找到办法监听系统软键盘的预打开事件,也就
意味之系统软件盘会立即消失,然后 emoji 键盘升起,【明显抖动】。
(2)用 ADJUST_PAN,去把 xml 里面布局基本改完了,对 emojiEdit 用 layout-alignBottom 和底部的附加
按钮对齐,然后让 emojiEdit 上半部(不被遮挡的部分)来显示文本。结果系统软键盘是直接跳出到可编
辑区域的下面,也就是底部的布局全被遮挡。巨坑。
潜在的解决办法:屏蔽系统键盘,完全自己绘制一个键盘,
可用理由:
高度可控,所有事件监听可控
3 ,在经历了 2 的坑之后,果断取消了下面的多个附加按钮,然后原有的自定义的 RelativeLayout 无法实时
监听系统软键盘的显示/隐藏。(该 RelativeLayout 重写了 onSizeChanged 方法,来监听 size 的改变)后来发
现,在有了 ADJUST_PAN 之后,屏幕底部基本总有一个 frameLayout 的高度和系统软键盘一致,所以
onSizeChanged()不会随着系统键盘的显隐而发生变动。自然就没办法监听键盘的显隐。
2018-11-25 日工作总结:
没睡好,九点前就到图书馆了,但脑子一团糟,代码写不动,强行看了两篇博客,然后下面跑去山下面试,
晚上回来,强行支撑着看了 Git 基础使用的一个视频。就这样吧。
周结:
2018-11-19-----2018-11-25
总的来说这一周完成的代码很多【Http 通用适配框架,和风天气 api 的调用,软键盘的布局,首页消
息列表的布局和部分功能实现等等】,就代码的完成程度来说可以说自己是很满意的,毕竟很多坑都没踩
过。一做,踩进去,可能要半天才能爬出来。用时间和精力来积累经验。
但是在阅读博文方面,这周完成的情况很糟糕。可以说是一篇新的实用的博客都没有看,知识简单回
顾了下之前看的几个写的精彩的博客。
下周寄望:
希望能用一周的时间把聊天消息界面实现,最好能把所有相关逻辑做完,再回来完善用户首页的消息
布局和功能逻辑。更希望自己在敲代码的同时也能够看一些新的博文,了解一些新的知识。
2018-11-26 日工作总结