在一个普通的聊天页面里。用ListView
布局,然后reverse
反转。
可以看到现在旧的消息都底部,当有新的消息的时候,会插入到底部。
我希望当聊天内容很少,不足以填充整个页面的时候,旧消息是保持在顶部的。
怎么能实现呢?
1. 不反转就能让消息在顶部,为什么一定反转
系统可能在任何时候,跳转list的最底部。反转可以很容易的通过scrollController.jumpTo(0)
跳转到底部。
如果不反转可能因为键盘遮挡等原因,通过scrollController.position.maxScrollExtent
无法跳转到底部。
2. Align
的 alignment: centerTop
可以解决吗
可以很容易搜索到一个方案,用alignment
让ListView
置顶。但是这有一个问题,因为ListView
的内容很少,这时候滚动的时候,无法正常显示。
这样试下?: