数据更新后让ListView自动滚动到底部

在做聊天界面的时候想要发送新的数据后,listview自动滚动到底部,显示出最新的数据。网上找了两个方法,觉得不错,记录一下。

方法一:

给listview添加下面两个属性

android:stackFromBottom="true"
android:transcriptMode="alwaysScroll"

or

mListView.setTranscriptMode(ListView.TRANSCRIPT_MODE_ALWAYS_SCROLL);

方法二:

// msgListView是ListView控件
// adapter是ListView绑定的Adapter,如果不方便直接使用,也可以通过ListView的getAdapter()方法获取到,前提是你已经绑定了适配器哦
// 里面的参数就很熟悉了吧,其实这个方法的主要作用是选中listview的指定列,选中了,自然就得让这个item可见,自然就滚动咯
msgListView.setSelection(adapter.getCount()-1);  

PS:更新数据

    /**
     * @description 更新数据
     *
     */
    private void updateData() {
        mAdapter.notifyDataSetChanged();
    }

参考自:

http://blog.csdn.net/sarsscofy/article/details/9245163

http://www.cnblogs.com/liulipeng/p/3942308.html

时间: 2024-11-17 19:20:16

数据更新后让ListView自动滚动到底部的相关文章

C# ListBox 自动滚动到底部 方法:

在ListBox中添加一条记录(ListBox.Items.Add方法)后,滚动条会自动回到顶部.我们可能更希望它自动滚动到底部,简要介绍几种方法. 方法一: 1 this.listBox1.Items.Add("new line"); 2 this.listBox1.SelectedIndex = this.listBox1.Items.Count - 1; 3 this.listBox1.SelectedIndex = -1; 在添加记录后,先选择最后一条记录,滚动条会自动到底部,

JS + jQuery 实现元素自动滚动到底部,兼容IE、FF、Chrome

HTML代码: <ul class="tasklog-dialog-ul" id="auto_to_bottom"> <li>删除虚拟机快照成功</li> <li>删除虚拟机快照成功</li> <li>删除虚拟机快照成功</li> <li>删除虚拟机快照成功</li> <li>删除虚拟机快照成功</li> <li>删除虚拟机

tableView 自动滚动到底部

- (void)addData:(id)object{ NSInteger count = self.dataArray.count; _index ++; NSString * str = [NSString stringWithFormat:@"当前第%zd行",_index]; [self.dataArray addObject:str]; if (count * 44.0f > self.tableView.height) { NSMutableArray *insert

c#编程之文件IO 自动滚动至底部(补充)

这里对上一文章做一个补充,因为很多时候,我们需要分步计算多个文件的crc值,而往往最后显示的值都需要在第一时间内进入眼帘.所以我们需要确保最后文件的计算结果必须显示到UI的最前端. 同样,我们依然使用格式:控件名称+ScrollToEnd()函数实现: 代码如下: 1 UserInput.ScrollToEnd(); 2 if(UserInput.IsFocused==true) 3 { 4 UserInput.SelectionStart = UserInput.Text.Length; 5

如何让listview滚动到底部

方法一: // msgListView是ListView控件 // adapter是ListView绑定的Adapter,如果不方便直接使用,也可以通过ListView的getAdapter()方法获取到,前提是你已经绑定了适配器哦 // 里面的参数就很熟悉了吧,其实这个方法的主要作用是选中listview的指定列,选中了,自然就得让这个item可见,自然就滚动咯 msgListView.setSelection(adapter.getCount()-1);  方法二: // 这个就比较直接了

listview滚动到底部自动加载数据

在android中listvieww加载数据,有的是分批加载,比如每次加载20条,100条就要加载5次,如果一次性加载100条,listview加载就变的慢,如果是有图片的话,一时浪费流量,二是item中带图片会出现错位的问题,listview加载数据目前好多app做法 一:分批加载 滑动到底部自动更新 二:滑动到底部 手动的点击加载更多 三:下拉刷新+底部加载更多 今天就讲下listview滑动到底部自动更新 分析:监听listview的滑动事件,判断listview是否滑动到底部,然后去加载

[转]ListView滚动到底部自动加载数据

转自:http://blog.csdn.net/shineflowers/article/details/41744241 在Android中有很多时候会选择用ListView加载数据,有的是分批加载,比如每次加载20条,100条就要加载5次,如果一次性加载100条,ListView加载就会变慢,如果是有图片的话,一是浪费流量,二是item中带图片会出现错位的问题l,ListView加载数据目前好多App的做法 1. 分批加载,滑动到底部自动更新 2. 滑动到底部,手动的点击加载更多 3. 下拉

Android点击列表后弹出输入框,所点击项自动滚动到输入框上方(类似微信的评论)

Android点击列表后弹出输入框,所点击项自动滚动到输入框上方 使用微信的朋友圈会发现,点击某一条评论后输入框会弹出来,然后所点击的那一项会自动地滚动到输入框上方的位置,这样如果开始所点击的评论在屏幕很下方的话,就不会被输入框遮住,虽然微信这一点在我的MX2频繁点几次后滚动的位置就完全错误了,但据说在有些机型上效果还不错,还有其他地方可能会有类似的需求,比如登录时软键盘可能会把登录按钮遮住. 要实现这个功能需要注意的地方主要有两点: 什么时候进行滚动操作,以及有可能还需要在输入框消失时回滚回去

监听Listview的滚动状态,是否滚动到了顶部或底部

/** * @author:Jack Tony * @description : 监听listview的滑动状态,如果到了顶部就刷新数据 * @date :2015年2月9日 */ private class ListViewListener implements OnScrollListener { @Override public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int t