我有ViewPager
作为ListView
标题,现在每件事情都运作良好,我接下来要做的是让用户有资格在{{1}的页面之间移动},并且能够点击页面,以便我可以触发新的ViewPager
。我在Activity
上尝试setOnClickListener
,但是当我想在页面之间移动时它会被触发。任何解决这个问题的工作???
编辑:我不想在ViewPager的任何视图中ViewPager
。比如setOnClickListener
。
答案 0 :(得分: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;
}
}