android中上下滑动listview,顶端和底端布局可以隐藏和显示

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android中上下滑动listview,顶端和底端布局可以隐藏和显示相关的知识,希望对你有一定的参考价值。

顶端是个导航区,中间是内容去,用listview实现,底端是用activityGroup分成四个频道,四个子activity,顶端导航区和中间内容区都是在子activity中;滑动listview内容时,导航区和频道区可以自动隐藏和显示
当listview上下滑动时,怎么把导航区和频道区自动隐藏和显示?

参考技术A list.setOnScrollListener(new OnScrollListener()
@Override
public void onScrollStateChanged(AbsListView view, int scrollState)
switch (scrollState)

case SCROLL_STATE_FLING:
//滑动中隐藏view
break;

case SCROLL_STATE_IDLE:
//空闲的时候显示
break;




@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount)


);
参考技术B listView.setOnScrollListener(new OnScrollListener()

@Override
public void onScrollStateChanged(AbsListView view, int scrollState)
// 当不滚动时
if (scrollState == OnScrollListener.SCROLL_STATE_IDLE)

//第1次:scrollState = SCROLL_STATE_TOUCH_SCROLL(1) 正在滚动
//第2次:scrollState = SCROLL_STATE_FLING(2) 手指做了抛的动作(手指离开屏幕前,用力滑了一下)
//第3次:scrollState = SCROLL_STATE_IDLE(0) 停止滚动



@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount)
// TODO Auto-generated method stub

);追问

如果我向上滑动,导航和频道都出现,如果向下滑动都隐藏;比如findViewById(R.id.btn_top).setVisibility(View.VISIBLE);但是我怎么判断是向上滑动还是向下滑动???而且,最主要的是,我在子activity中做判断,底端的频道区是activityGroup共用的,能操作吗?

追答

listView.setOnTouchListener(new OnTouchListener()

@Override
public boolean onTouch(View v, MotionEvent event)
switch (event.getAction())
case MotionEvent.ACTION_DOWN:
if (FDLog.DEBUG)
Log.i(TAG, "onTouch--->ACTION_DOWN");

break;
case MotionEvent.ACTION_MOVE:
if (FDLog.DEBUG)
Log.i(TAG, "onTouch--->ACTION_MOVE");

if (mDownPos == -1)
mDownPos = event.getRawY();

mDeltaY = event.getRawY() - mDownPos;

if (mDeltaY ACTION_UP");

mDownPos = -1;
break;
default:
break;

return false;

);
可以通过发送消息给相应的UI显示相应的效果。

参考技术C 可以设置顶端和底端的高度或者位置,这样就相当于看不见了追问

你说的也是个办法,但是,我是在子activity中操作的,底端的频道区隐藏和显示,在子activity中发送广播?

以上是关于android中上下滑动listview,顶端和底端布局可以隐藏和显示的主要内容,如果未能解决你的问题,请参考以下文章

Android--判断listview上下滑动的方法

Android 解决之NestedScrollView嵌套ListView后不能上下滑动的问题

android listview上下滑动时为啥不触发点击事件

android listview为啥不能滑动

android listview上下滑动时为啥不触发点击事件

android fragment怎么监听上下滑动