我有一个ViewPager
作为ListView
标题,现在一切都运行良好,我接下来要做的是让用户有资格在页面之间移动ViewPager
,并且能够点击页面,这样我就可以触发一个新的Activity
。我试过setOnClickListener
了,ViewPager
但是当我想在页面之间移动时它触发了。有什么解决办法吗???
编辑:我不想setOnClickListener
在 ViewPager 的任何视图中。像一个Button
。
我有一个ViewPager
作为ListView
标题,现在一切都运行良好,我接下来要做的是让用户有资格在页面之间移动ViewPager
,并且能够点击页面,这样我就可以触发一个新的Activity
。我试过setOnClickListener
了,ViewPager
但是当我想在页面之间移动时它触发了。有什么解决办法吗???
编辑:我不想setOnClickListener
在 ViewPager 的任何视图中。像一个Button
。
您需要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;
}
}