java - ListView中的EditText在输入到行末自动换行的时候总是失去焦点
PHPz
PHPz 2017-04-18 10:31:30
0
2
663

Situation:
LiveView中的Item都是一个自定义的View,其中有一个EditText控件用于输入文字。现在输入的过程中一旦到了一行的末尾自动换行的时候,焦点就失去了,要重新点击该EditText控件才可以继续输入。

为什么会这样,是因为listview重新绘制了嘛?怎么解决。。

PHPz
PHPz

学习是最好的投资!

모든 응답 (2)
小葫芦

listview重绘了,整个过程重绘了三次,点击edittext软键盘弹出导致listview压缩,这是第一次;edittext内容过多换行导致edittext高度变化进一步导致item高度变化,得重绘,这是第二次;重绘会导致edittext失去焦点,软键盘隐藏,listview展开,进行第三次重绘。那么,是否解决思路也就知道了呢?既然是失去焦点引起,那么就再获取焦点了,记录上次操作的edittext,在adapter的getView方法里判断一下,是这个edittext的话就requestFocus一下。

    刘奇

    ListView滚动促使其重新LayoutChildren, 最后导致EditText失去输入焦点.
    由于EditText在ListView会有不适应的这个症状, 建议还是换RecyclerView吧...

    p.s.应用市场里少有应用会这么设计: ListView中放一个EditText...

      최신 다운로드
      더>
      웹 효과
      웹사이트 소스 코드
      웹사이트 자료
      프론트엔드 템플릿
      회사 소개 부인 성명 Sitemap
      PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!