android中listview如何支持上下滑动,左右滑动且左右滑动时可以指定固定列数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android中listview如何支持上下滑动,左右滑动且左右滑动时可以指定固定列数相关的知识,希望对你有一定的参考价值。
参考技术A 左右滑动可以用gallery,不知道LZ想要什么样的效果呢,不过提醒一下,不要用scrollview嵌套listview,效果不好哦~~ 参考技术B 不太明白楼主的具体意思.何为指定固定列数呢.如果只是想滑动,在 listview 外面套一个 ScrollView 就可以了吧.追问
现在有这么一个需求,看到股票的排行列表吗??
需求是总共有20列数据,屏幕显示不下的时候需要用左右滚动。
但是滚动时,第一列(或者是第一列和第二列)要求保持固定不变。
曾经在网上查到有人用listview做了一个demo,可以根据手势进行实现。
但是,用户体验效果不好。
针对以上需求没有合适的思路,所以来求助大家帮忙了
调用onFling方法中的mOnFlingListener.flingToNext();
flingToNext方法的是实现在MyViewFlipper类中,调用flingToNext方法的addView(mOnViewFlipperListener.getNextView(), 0);
getNextView的实现在ViewFlipperDemoActivity类中 第5个回答 2013-01-15 您的问题解决了么?
怎么解决的 ?
android中上下滑动listview,顶端和底端布局可以隐藏和显示
顶端是个导航区,中间是内容去,用listview实现,底端是用activityGroup分成四个频道,四个子activity,顶端导航区和中间内容区都是在子activity中;滑动listview内容时,导航区和频道区可以自动隐藏和显示
当listview上下滑动时,怎么把导航区和频道区自动隐藏和显示?
@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显示相应的效果。
你说的也是个办法,但是,我是在子activity中操作的,底端的频道区隐藏和显示,在子activity中发送广播?
以上是关于android中listview如何支持上下滑动,左右滑动且左右滑动时可以指定固定列数的主要内容,如果未能解决你的问题,请参考以下文章
android中上下滑动listview,顶端和底端布局可以隐藏和显示
Android 解决之NestedScrollView嵌套ListView后不能上下滑动的问题