Android开发时,最常用的控件之一就是ListView了,而使用ListView的同时,必然需要对它设置监听器,常用的监听器有这么几个
1.OnItemClickListener
2.OnTouchListener
3.OnScrollListener
1监听器在点击该项目的子项时触发,2监听器在触碰到ListView时触发,3监听器在ListView滚动时触发,
下面几个例子分别表述了具体处理的办法
[java]view plaincopyclassItemClickEventimplementsOnItemClickListener{ @Override publicvoidonItemClick(AdapterView<?>arg0,Viewarg1,intarg2, longarg3){ //TODOAuto-generatedmethodstub //arg1.setVisibility(View.GONE); //对子项处理的办法 //BtnCheck(0); System.out.println(arg2); } } classItemTouchEventimplementsOnTouchListener{ @Override publicbooleanonTouch(Viewv,MotionEventevent){ //TODOAuto-generatedmethodstub //System.out.println("触摸.."); if(event.getAction()==MotionEvent.ACTION_MOVE){ //System.out.println("MOVE");//接触到ListView移动时 BtnCheck(0); }elseif(event.getAction()==MotionEvent.ACTION_UP){ //System.out.println("up");//离开ListView时 BtnCheck(currentPage); }elseif(event.getAction()==MotionEvent.ACTION_DOWN){ //System.out.println("down");//接触到ListView时 BtnCheck(0); } returnfalse; } } classLvScrollEventimplementsOnScrollListener{ @Override publicvoidonScroll(AbsListViewview,intfirstVisibleItem, intvisibleItemCount,inttotalItemCount){ //TODOAuto-generatedmethodstub } @Override publicvoidonScrollStateChanged(AbsListViewview,intscrollState){ //TODOAuto-generatedmethodstub switch(scrollState){ caseOnScrollListener.SCROLL_STATE_IDLE:// BtnCheck(currentPage); //mBusy=false; System.out.println("停止..."); break; caseOnScrollListener.SCROLL_STATE_TOUCH_SCROLL: BtnCheck(0); //mBusy=true; System.out.println("正在滑动..."); break; caseOnScrollListener.SCROLL_STATE_FLING: BtnCheck(0); //mBusy=true; System.out.println("开始滚动..."); break; } } }