0

我有一个ViewPager作为ListView标题,现在一切都运行良好,我接下来要做的是让用户有资格在页面之间移动ViewPager,并且能够点击页面,这样我就可以触发一个新的Activity。我试过setOnClickListener了,ViewPager但是当我想在页面之间移动时它触发了。有什么解决办法吗???

编辑:我不想setOnClickListener在 ViewPager 的任何视图中。像一个Button

4

1 回答 1

0

您需要onClickListener在视图寻呼机中设置视图(可能是一个按钮)adapter并处理适配器中的单击。

编辑
您最好使用 ViewFlipper 来实现这种功能。

private static final int SWIPE_MIN_DISTANCE = 120;
    private static final int SWIPE_MAX_OFF_PATH = 250;
    private static final int SWIPE_THRESHOLD_VELOCITY = 200;

class MyGestureDetector extends SimpleOnGestureListener {
        @Override
        public boolean onSingleTapConfirmed(MotionEvent arg0) {
            //Single Tap
            return false;
        };

        public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
                float velocityY) {
            try {
                if (Math.abs(e1.getY() - e2.getY()) > REL_SWIPE_MAX_OFF_PATH)
                    return false;

                if (e1.getX() - e2.getX() > REL_SWIPE_MIN_DISTANCE
                        && Math.abs(velocityX) > REL_SWIPE_THRESHOLD_VELOCITY) {
                    ViewFlipper vf = (ViewFlipper) findViewById(R.id.flipper);
                    vf.setInAnimation(pushRightIn);
                    vf.setOutAnimation(pushLeftOut);
                    // right to left swipe
                }

                else if (e2.getX() - e1.getX() > REL_SWIPE_MIN_DISTANCE
                        && Math.abs(velocityX) > REL_SWIPE_THRESHOLD_VELOCITY) {
                    ViewFlipper vf = (ViewFlipper) findViewById(R.id.flipper);
                    vf.setInAnimation(pushLeftIn);
                    vf.setOutAnimation(pushRightOut);
                    // left to right swipe
                }
            } catch (Exception e) {
            }
            return false;
        }
    }
于 2012-11-19T08:32:15.483 回答