制作子ListView滚动

时间:2010-01-29 03:18:25

标签: android listview scroll android-linearlayout

您好我正在尝试制作比实际Android屏幕更宽的终端类型应用程序。列表视图很棒,除了我不希望文本换行。如果文本比屏幕宽,我希望它打印全文,然后用户可以水平滚动,如果他们想要看到屏幕上打印的内容。仅供参考,这是针对ascii类型的表格。我遵循了这个例子:

http://nan-technicalblog.blogspot.com/2008/12/android-how-to-use-horizontal-scrolling.html

就水平文本而言,它的效果非常好,它完全符合我的要求,但是我无法在自定义LinearLayout中获取ListView以实际滚动。我已经尝试将onScroll方法中的Y坐标传递给mListView,例如:

mListView.scrollBy(0, distanceY);

但似乎移动自定义LinearLayout窗口而不是仅滚动ListView。我可以看出ListView没有滚动,因为窗口移动没有ListView的垂直滚动条移动。一切都在滑动。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

好的,这个人在我的业余时间也花了大约一个星期来弄明白。我必须将dispatchTouchEvent提供的代码更改为:

 public boolean dispatchTouchEvent(MotionEvent ev){
     mGestureDetector.onTouchEvent(ev);
     mListView.onTouchEvent(ev);
     return true;
 }

还改为onScroll以返回false只是为了获得良好的衡量标准。