Flutter ListView底部新增組件后滾動到最底部 鍵盤遮擋問題的適配


用ListView時有一個很常見的需求,就是在輸入時鍵盤彈出會遮擋到輸入框,在網上查的都是使用這一段代碼:

_scrollController.jumpTo(_scrollController.position.maxScrollExtent);

在對鍵盤監聽,如果鍵盤彈出則visable = true, 使底部占位Wiget為:

visable ? SizedBox(height: 250) : Container()

這時會爆出以下錯誤:

 

 剛開始以為是_scrollControll.jumpTo這段代碼的問題,后來對先加入底部占位Widget這種情況進行測試發現是完全可行的,

最后發現在滾動時加一個小的延時可以解決這個問題:

Future.delayed(Duration(milliseconds: 100), (){
      _scrollController.jumpTo(_scrollController.position.maxScrollExtent);
    });

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM