今天在写项目有关盖楼功能的时候发现一个体验性很差的问题
即当已经存在很多的条目后,用户再新增条目时ScrollView并不能到达最下方,也就是用户并不能清楚的
知道自己是否发送成功,这个体验是很差的,在网上查找问题时找到了一种解决方法是在Xml中添加这两
行代码,我反正加上是没有成功的,
android:stackFromBottom="true"
android:transcriptMode="alwaysScroll"
之后又找到了另一种解决方法是可以的
下面贴出解决方法
Xml文件
MyListView是自己创建的继承自listview,并声明ScrollView控件
<ScrollView android:id="@+id/scroll" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="15dp" android:background="#FFFFFF" > <com.always.library.View.MyListView android:id="@+id/live_message" android:layout_width="match_parent" android:layout_height="wrap_content" android:divider="@null" android:dividerHeight="2dp"> </com.always.library.View.MyListView> </ScrollView>
实现类中获取到scroll控件id后
在想要scrollview显示到底部的地方加入代码
scrollView.post(new Runnable() {
@Override
public void run() {
scrollView.fullScroll(ScrollView.FOCUS_DOWN);
}
});
我是在用户点击完发送并生成新的消息条目后跳转的
这样就可以实现用户发送完消息,列表自动跳转到最底部,使用户可以查看自己刚发的信息