Android listview定位到上次显示的位置的实现方法

Android listview定位到上次显示的位置的实现方法

整体思路:滑动lictview时,记录listview的位置,定位时定位到该位置。

1、添加全局变量

private int scrolledX = 0; private int scrolledY = 0;

2、Oncreate()添加滚动事件监听

ClassesLV.setOnScrollListener(new OnScrollListener() { /** * 滚动状态改变时调用 */ @Override public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) { } @Override public void onScrollStateChanged(AbsListView view, int scrollState) { if (scrollState == OnScrollListener.SCROLL_STATE_IDLE) { try {   scrolledX = view.getFirstVisiblePosition();   Log.i("scroll X", String.valueOf(scrolledX));   scrolledY = view.getChildAt(0).getTop();   Log.i("scroll Y", String.valueOf(scrolledY)); } catch (Exception e) { } } } // });

3、activity  重新启动时,恢复原先的定位。

public void onBack() {   ClassesLV.setSelectionFromTop(scrolledX, scrolledY); } protected void onResume() {   // ClassesLV.scrollTo(scrolledX, scrolledY);   onBack();   // initDataFromNet();   isClick = 0;   super.onResume(); }

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

时间: 2024-12-29 03:37:26

Android listview定位到上次显示的位置的实现方法的相关文章

手机定位-新手求助,android百度定位textview没有显示地址

问题描述 新手求助,android百度定位textview没有显示地址 public class StartCanteenActivity extends Activity { private TextView locationInfoTextView = null; private Button startButton = null; private LocationClient locationClient = null; private static final int UPDATE_TI

Android编程实现Toast只显示最后一条的方法

本文实例讲述了Android编程实现Toast只显示最后一条的方法.分享给大家供大家参考,具体如下: 在做Android开发中,时不时的可能会用到Toast,但用Toast的时候,连续使用会存在一个问题,就是一条条显示Toast.而不是直接显示最后一条.因此,根据此需求,现在写了ToastUtil这个类,该类中有三个方法供选择. ToastUtil.Java import android.content.Context; import android.graphics.PixelFormat;

Android ListView无数据时显示其他View

今天看的一块布局是这样的: <!-- The frame layout is here since we will be showing either the empty view or the list view. --> <FrameLayout android:layout_width="match_parent" android:layout_height="0dip" android:layout_weight="1"

解决Android ListView数据为空及加载错误的方法_Android

在项目中,都会用到ListView或GridView等列表控件.一般会用来展示从网络请求的数据 .如果请求的数据为空或者在请求的时候正好无没有网络了,我们的界面应该如何展示呢?数据为空的时候,ListView可以使用setEmptyView (View emptyView) 方法来我们需要的统一界面.数据加载失败呢?我们也可以统一进行处理. //下面这个类是简单地封装用于无数据及加载错误的一个页面. public class CommonShowView { private Context mC

android ListView和ProgressBar(进度条控件)的使用方法_Android

ListView控件的使用:ListView控件里面装的是一行一行的数据,一行中可能有多列,选中一行,则该行的几列都被选中,同时可以触发一个事件,这种控件在平时还是用得很多的.使用ListView时主要是要设置一个适配器,适配器主要是用来放置一些数据.使用起来稍微有些复杂,这里用的是android自带的SimpleAdapter,形式如下:android.widget.SimpleAdapter.SimpleAdapter(Context context, List<? extends Map<

android ListView和ProgressBar(进度条控件)的使用方法

ListView控件的使用:ListView控件里面装的是一行一行的数据,一行中可能有多列,选中一行,则该行的几列都被选中,同时可以触发一个事件,这种控件在平时还是用得很多的.使用ListView时主要是要设置一个适配器,适配器主要是用来放置一些数据.使用起来稍微有些复杂,这里用的是android自带的SimpleAdapter,形式如下:android.widget.SimpleAdapter.SimpleAdapter(Context context, List<? extends Map<

android图库竖屏不显示status bar的解决方法_Android

图库在JB和JB2的版本上显示的行为是:横屏全屏显示,竖屏会显示status bar.如何使竖屏也不显示status bar. 修改alps/packages/apps/Gallery2/src/com/android/gallery3d/app/AbstractGalleryActivity.java中toggleStatusBarByOrientation() 方法: 复制代码 代码如下: private void toggleStatusBarByOrientation() { if (m

android图库竖屏不显示status bar的解决方法

图库在JB和JB2的版本上显示的行为是:横屏全屏显示,竖屏会显示status bar.如何使竖屏也不显示status bar. 修改alps/packages/apps/Gallery2/src/com/android/gallery3d/app/AbstractGalleryActivity.java中toggleStatusBarByOrientation() 方法: 复制代码 代码如下: private void toggleStatusBarByOrientation() { if (m

android开发 listview的item点击后显示详细信息

问题描述 android开发 listview的item点击后显示详细信息 item 的textview点击后我把maxlines的限制去除,数据是能完整显示了,但是由于item本身的高度限制,导致textview无法正常显示,请问怎么解决 解决方案 点击ListView,显示其详细信息android listView点击item,高亮显示Android ListView点击item 显示隐匿菜单项 解决方案二: 在item的layout文件中,给item设定minHeight,即可 解决方案三