Flutter实现Telegram/WhatsApp式键盘与表情选择器无缝切换方案咨询
实现Telegram/WhatsApp式聊天UI:键盘与表情选择器无缝切换问题
需求说明
要实现模仿Telegram、WhatsApp的聊天UI,核心要求是键盘与表情选择器间的无缝切换:
- 表情选择器初始高度需与软键盘一致
- 切换时,键盘滑下后表情选择器需已处于下方;反之键盘滑上时,无其他元素出现异常移动
遇到的技术问题
在Flutter中未找到可靠获取键盘高度的API:比如MediaQuery.of(context).viewInsets.bottom仅在键盘显示时返回有效高度,键盘收起时返回值为0。
尝试过以下方案,但均未解决问题:
- 调整
resizeToAvoidBottomInset参数值 - 使用
SizedBox+Column替代Stack布局
上述方案均导致输入框出现先跟随键盘移动、再随表情面板回位的异常效果。
诉求
寻求无需依赖pub.dev第三方包的实现方案。
内容的提问来源于stack exchange,提问作者Leo Letto
相关产品推荐
相关产品推荐

