博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android ListView点击item返回后listview滚动位置
阅读量:7071 次
发布时间:2019-06-28

本文共 1339 字,大约阅读时间需要 4 分钟。

1.Don't work when dynamically loading content 

Parcelable state;@Overridepublic void onPause() {        // Save ListView state @ onPause    Log.d(TAG, "saving listview state @ onPause");    state = listView.onSaveInstanceState();    super.onPause();}...@Overridepublic void onViewCreated(final View view, Bundle savedInstanceState) {    super.onViewCreated(view, savedInstanceState);    // Set new items    listView.setAdapter(adapter);    ...    // Restore previous state (including selected item index and scroll position)    if(state != null) {        Log.d(TAG, "trying to restore listview state..");        listView.onRestoreInstanceState(state);    }}

 2.在listview点击事件中保存位置信息

static int index ,top; listview.setOnItemClickListener(new OnItemClickListener() {            @SuppressLint("ResourceAsColor")            @Override            public void onItemClick(final AdapterView
parent, View view, final int position, long id) { index = listview.getFirstVisiblePosition(); View v = listview.getChildAt(0); top = (v == null) ? 0 : (v.getTop() - listview.getPaddingTop()); } });
listview.setAdapter(adapter);// restore index and positionlistview.setSelectionFromTop(index, top);

 

转载于:https://www.cnblogs.com/andies/p/5833506.html

你可能感兴趣的文章
手工安装hadoop ecosystem之疑难杂症
查看>>
数论学习之(一):一元线性同余方程和二元一次不等式
查看>>
SVM-支持向量机算法概述
查看>>
我的友情链接
查看>>
web容器启动时,借助spring进行初始化操作
查看>>
DNS服务器之BIND基础服务部署
查看>>
location
查看>>
Araxis Merge的help
查看>>
通过进程ID得到进程名
查看>>
cacti的基本应用
查看>>
MYSQL错误代码集
查看>>
Centos7 命令总结
查看>>
lufylegend HTML5开源框架基本操作
查看>>
startActivityForResult备忘
查看>>
android webrtc使用opensl es
查看>>
spring mvc restful + json 测试代码(一)
查看>>
在控制台程序中使用MFC类
查看>>
用enum类型数据解决switch case选择字符串的问题
查看>>
Exception happened during processing of request
查看>>
微服务间的通信如何选择
查看>>