人工智能研讨论坛(灵能智能)

搜索
查看: 3745|回复: 0

[代码探讨] 为Android的TextView添加scroll滚动消息监听的方法

[复制链接]
发表于 2014-5-28 10:23:51 | 显示全部楼层 |阅读模式
安卓的TextView本身在文本内容过多时,就已经具备了滚动功能,因此,不必添加ScrollView。而,如何监听TextView是否被滚动呢?在TextView内部有个保护函数onScrollChanged。但是TextView却没有设置此类监听的方法。而,我们可以通过GestureDetector类来实现监听,因此类中有onScroll事件的响应。

代码实现如:
  1.         private void setGestureListenerForView(View targetView)
  2.         {
  3.                 targetView.setLongClickable(true);
  4.                 targetView.setOnTouchListener(new OnTouchListener() {
  5.                        
  6.                         @Override
  7.                         public boolean onTouch(View v, MotionEvent event) {                               
  8.                                 return mGestureDetector.onTouchEvent(event);
  9.                         }
  10.                 });
  11.         }
复制代码
在mGestureDetector类中实现:
  1.         class PageOnGestureListener extends SimpleOnGestureListener
  2.         {
  3.                 @Override
  4.                 public boolean onSingleTapConfirmed(MotionEvent e) {
  5.                         showButtonGroup();
  6.                         return super.onSingleTapConfirmed(e);
  7.                 }

  8.                 @Override
  9.                 public boolean onScroll(MotionEvent e1, MotionEvent e2,
  10.                                 float distanceX, float distanceY) {
  11.                         return super.onScroll(e1, e2, distanceX, distanceY);
  12.                 }
  13.         }
复制代码
我就是使用这种方法给AISEntry的TxtReader,添加滚动监听的。



赞助通道

QQ|小黑屋|手机版|Archiver|人工智能研讨论坛(灵能智能) 苏ICP备11019567号

GMT+8, 2022-7-7 00:14 , Processed in 0.019538 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表