您的位置:首页 > 移动开发 > Android开发

Android开发心得-ListView的监听事件

2015-05-30 09:17 561 查看
Android开发时,最常用的控件之一就是ListView了,而使用ListView的同时,必然需要对它设置监听器,常用的监听器有这么几个

1.OnItemClickListener 

2.OnTouchListener

3.OnScrollListener

1监听器在点击该项目的子项时触发,2监听器在触碰到ListView时触发,3监听器在ListView滚动时触发,

下面几个例子分别表述了具体处理的办法

[java] view
plaincopy

class ItemClickEvent implements OnItemClickListener {  

  

        @Override  

        public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,  

                long arg3) {  

            // TODO Auto-generated method stub  

            // arg1.setVisibility(View.GONE);  

  

            // 对子项处理的办法  

  

      

            // BtnCheck(0);  

            System.out.println(arg2);  

        }  

  

    }  

  

  

    class ItemTouchEvent implements OnTouchListener {  

  

        @Override  

        public boolean onTouch(View v, MotionEvent event) {  

            // TODO Auto-generated method stub  

            // System.out.println("触摸..");  

            if (event.getAction() == MotionEvent.ACTION_MOVE) {  

                // System.out.println("MOVE");  //接触到ListView移动时  

                BtnCheck(0);  

            } else if (event.getAction() == MotionEvent.ACTION_UP) {  

                // System.out.println("up");   //离开ListView时  

                BtnCheck(currentPage);  

            } else if (event.getAction() == MotionEvent.ACTION_DOWN) {  

                // System.out.println("down");   //接触到ListView时  

                BtnCheck(0);  

            }  

  

            return false;  

        }  

  

    }  

  

    class LvScrollEvent implements OnScrollListener {  

  

        @Override  

        public void onScroll(AbsListView view, int firstVisibleItem,  

                int visibleItemCount, int totalItemCount) {  

            // TODO Auto-generated method stub  

  

        }  

  

        @Override  

        public void onScrollStateChanged(AbsListView view, int scrollState) {  

            // TODO Auto-generated method stub  

            switch (scrollState) {  

            case OnScrollListener.SCROLL_STATE_IDLE: //  

                BtnCheck(currentPage);  

                // mBusy = false;  

                System.out.println("停止...");  

                break;  

            case OnScrollListener.SCROLL_STATE_TOUCH_SCROLL:  

                BtnCheck(0);  

                // mBusy = true;  

                System.out.println("正在滑动...");  

                break;  

            case OnScrollListener.SCROLL_STATE_FLING:  

                BtnCheck(0);  

                // mBusy = true;  

                System.out.println("开始滚动...");  

  

                break;  

            }  

        }  

  

    }  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: