我正在开发我的第一个真正的 Android 应用程序。因此,我有大量信息可以在一项活动中显示。所以我希望有 4 个屏幕可以垂直滚动以切换到另一个屏幕(就像 ViewPager 水平一样)。
我还没有找到让 ViewPager 垂直滚动的方法。
我在网上查了一下,这里。但是我没有找到任何给出直接答案的线程。
我什至尝试切换到横向并使所有元素旋转 90 度,但这真的不是一个好方法......所以请帮助我。
我正在开发我的第一个真正的 Android 应用程序。因此,我有大量信息可以在一项活动中显示。所以我希望有 4 个屏幕可以垂直滚动以切换到另一个屏幕(就像 ViewPager 水平一样)。
我还没有找到让 ViewPager 垂直滚动的方法。
我在网上查了一下,这里。但是我没有找到任何给出直接答案的线程。
我什至尝试切换到横向并使所有元素旋转 90 度,但这真的不是一个好方法......所以请帮助我。
您可以进行快速滑动,并在每次滑动更改数组中的活动时,这是我想到的一个小例子。
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;
int[] values = new int[] {
R.layout.Layout1,
R.layout.Layout2,
R.layout.Layout3 };
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
float velocityY) {
try {
if (Math.abs(e1.getY() - e2.getY()) > SWIPE_MAX_OFF_PATH) {
return false;
}
/**
* left to right swipe
*/
if (e1.getX() - e2.getX() > SWIPE_MIN_DISTANCE
&& Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {
//next Layout
setContentView(array[]+1)
/**
* right to left
*/
} else if (e2.getX() - e1.getX() > SWIPE_MIN_DISTANCE
&& Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {
//prev layout
setContentView(array[]-1)
}
}
} catch (Exception e) {
}
return false;
}
希望你会发现这个有用,干杯