android中上下滑动listview,顶端和底端布局可以隐藏和显示 10
顶端是个导航区,中间是内容去,用listview实现,底端是用activityGroup分成四个频道,四个子activity,顶端导航区和中间内容区都是在子activit...
顶端是个导航区,中间是内容去,用listview实现,底端是用activityGroup分成四个频道,四个子activity,顶端导航区和中间内容区都是在子activity中;滑动listview内容时,导航区和频道区可以自动隐藏和显示
当listview上下滑动时,怎么把导航区和频道区自动隐藏和显示? 展开
当listview上下滑动时,怎么把导航区和频道区自动隐藏和显示? 展开
3个回答
展开全部
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) {
}
});
@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) {
}
});
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
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
}
});
@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显示相应的效果。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以设置顶端和底端的高度或者位置,这样就相当于看不见了
追问
你说的也是个办法,但是,我是在子activity中操作的,底端的频道区隐藏和显示,在子activity中发送广播?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询