|
安卓的TextView本身在文本内容过多时,就已经具备了滚动功能,因此,不必添加ScrollView。而,如何监听TextView是否被滚动呢?在TextView内部有个保护函数onScrollChanged。但是TextView却没有设置此类监听的方法。而,我们可以通过GestureDetector类来实现监听,因此类中有onScroll事件的响应。
代码实现如:
- private void setGestureListenerForView(View targetView)
- {
- targetView.setLongClickable(true);
- targetView.setOnTouchListener(new OnTouchListener() {
-
- @Override
- public boolean onTouch(View v, MotionEvent event) {
- return mGestureDetector.onTouchEvent(event);
- }
- });
- }
复制代码 在mGestureDetector类中实现:
- class PageOnGestureListener extends SimpleOnGestureListener
- {
- @Override
- public boolean onSingleTapConfirmed(MotionEvent e) {
- showButtonGroup();
- return super.onSingleTapConfirmed(e);
- }
- @Override
- public boolean onScroll(MotionEvent e1, MotionEvent e2,
- float distanceX, float distanceY) {
- return super.onScroll(e1, e2, distanceX, distanceY);
- }
- }
复制代码 我就是使用这种方法给AISEntry的TxtReader,添加滚动监听的。
|
|