我正在尝试在Android消息/聊天应用程序中使用ListView,并且我希望在添加项目时能够平滑地制作动画(但仅当用户正在查看最新消息时,如果他们正在查看以前的消息我不会需要动画)。
我正在使用stackFromBottom =“true”和transcriptMode =“normal”,这使我接近于滚动到最新消息的行为,如果用户正在查看最新消息,而不是如果他们'已滚动到以前的消息。似乎transcriptMode =“normal”或“alwaysScroll”的行为非常快速地滚动到新消息。我希望有一些方法可以在1秒的时间内滚动滚动。
<?xml version="1.0" encoding="utf-8"?>
<ListView xmlns:android="http://schemas.android.com/apk/res/android"
android:stackFromBottom="true"
android:transcriptMode="normal"/>
答案 0 :(得分:2)
设置
android:transcriptMode = "disabled"
而是使用
int lastIndex = listView.getChildCout() - 1;
listView.smoothScrollToPosition(lastIndex);
每次添加新项目时都会。