• 对ListView滚动状态的监听


    有的时候,我们需要对ListView滚动做一个相应的监听事件,例如:要实现如下图通讯录的功能:

    思路为:首先呢,中间那个"路"字为一个TextView,它与ListView采用相对布局的布局风格,当我们滑动ListView的时候

    控制其显示,当ListView停止的时候就让其消失。

    首先呢,ListView的滚动有三种状态
    第一是静止状态,SCROLL_STATE_IDLE
    第二是手指滚动状态,SCROLL_STATE_TOUCH_SCROLL
    第三是手指不动了,但是屏幕还在滚动状态。SCROLL_STATE_FLING

    下面是ListView滚动时的响应代码:

    [java] view plaincopy
     
    1. <span style="font-size:18px">//响应ListView的滚动状态</span>  
    [java] view plaincopy
     
    1. <span style="font-size:18px">getListView().setOnScrollListener(new OnScrollListener() {  
    2. <span style="white-space:pre">  </span>int listViewScrollState;  
    3.               
    4.     /** 
    5.      * ListView的状态改变时触发 
    6.      * @param view 
    7.      * @param scrollState 
    8.      */  
    9.     @Override  
    10.     public void onScrollStateChanged(AbsListView view, int scrollState) {  
    11.     <span style="white-space:pre">  </span>listViewScrollState = scrollState;  
    12.         switch(scrollState){  
    13.         case OnScrollListener.SCROLL_STATE_IDLE://空闲状态  
    14.                       
    15.         <span style="white-space:pre">  </span>break;  
    16.         case OnScrollListener.SCROLL_STATE_FLING://滚动状态  
    17.               
    18.             break;  
    19.         case OnScrollListener.SCROLL_STATE_TOUCH_SCROLL://触摸后滚动  
    20.                   
    21.             break;  
    22.         }  
    23.     }  
    24.   
    25.     /** 
    26.      * 正在滚动 
    27.      * firstVisibleItem第一个Item的位置 
    28.      * visibleItemCount 可见的Item的数量 
    29.      * totalItemCount item的总数 
    30.      */  
    31.     @Override  
    32.     public void onScroll(AbsListView view, int firstVisibleItem,int visibleItemCount, int totalItemCount) {  
    33.         //控制显示和隐藏的代码...  
    34.     }  
    35. });</span>  
  • 相关阅读:
    java笔记之日期相关操作
    Android笔记之察看网络状况
    Jsp之复选框的使用
    jsp之table美化
    JSP与servlet之间跳转传值
    request的get/setParameter和get/setAttribute()
    Jsp的button按钮
    使用request.getRequestDispatcher请求转发到一个页面中文乱码解决 【转】
    Servle与JSP之间的相互跳转
    java笔记之null与isEmpty()
  • 原文地址:https://www.cnblogs.com/xgjblog/p/4228840.html
Copyright © 2020-2023  润新知