1
回答
recyclerview item里面嵌套了edittext 输入法隐藏显示时候,页面跳动问题
百度AI开发者大赛带你边学边开发,赢100万奖金,加群:418589053   

@微笑的江豚 你好,想跟你请教个问题:

你好,我这里遇到一个问题,recyclerview item里面嵌套了edittext.就是每个item否有个回复按钮,点击回复按钮edittext 才会显示。点击另外一个,原来的就隐藏。问题是,当tiem显示满一屏幕的时候,再点击回复,输入法显示,就会出现页面跳动。 https://my.oschina.net/JiangTun/blog/916955

看了你这篇文章,请问有您有好的解决方案或者建议吗?谢谢啦

布局如下

<无标签>
举报
阶前梧叶
发帖于12个月前 1回/82阅

早啊哥们,我的想法是,遇到这种问题,就看看其他相似的App是怎么做的。你的editTextViewy(以下简称et)一开始是View.Gone状态,那么容器ViewGroup在布局时就不会计算et的尺寸。而当et显示时,容器就需要计算et的尺寸并且重新布局,造成页面重绘。那么在重绘期间,键盘也会弹出,就造成了页面多次重绘,导致跳闪。

原理跟我的这篇博客《android 软键盘显示和隐藏造成页面跳闪问题的解决方案》里面遇到的是一样的,所以解决方案也很相似。那就是先设置et没有焦点或焦点不可用,当点击了按钮后,设置延时一小段时间后再让et获取焦点。这样的效果就是,点击按钮,显示et,待et完全显示后,再弹出键盘,这样就不会跳闪了。

一言概之,你的问题就是et的显示动画和键盘弹出动画冲突了,祝愉快!

顶部