我有水平swippable页面viewpager里面的小垂直滚动视图。 问题是,目前我无法通过在滚动视图上水平滑动浏览页面。 我希望能够通过滚动视图通过viewpager的页面中滚动,也有功能垂直刷卡通过滚动视图的内容滚动水平滑动。滚动视图里面viewpager不滚动
1
A
回答
0
你可以用下面的自定义滚动型
public class CustomScrollView extends ScrollView {
private GestureDetector mGestureDetector;
public CustomScrollView(Context context, AttributeSet attrs) {
super(context, attrs);
mGestureDetector = new GestureDetector(context, new YScrollDetector());
}
@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
return super.onInterceptTouchEvent(ev) && mGestureDetector.onTouchEvent(ev);
}
// Return false if we're scrolling in the x direction
class YScrollDetector extends SimpleOnGestureListener {
@Override
public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) {
return Math.abs(distanceY) > Math.abs(distanceX);
}
}
}
1
我不知道这是否是相同的情况下做到这一点,但我不得不说你已经描述了类似的问题。我已到处寻找这个答案:https://stackoverflow.com/a/35180360/1969966。
基本上,如果你的活动结构就像上面的例子:
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:elevation="4dp"
android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>
<android.support.design.widget.TabLayout
android:id="@+id/tab_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/toolbar"
android:background="?attr/colorPrimary"
android:elevation="6dp"
android:minHeight="?attr/actionBarSize"
app:tabMode="fixed"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"/>
<android.support.v4.view.ViewPager xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/toolbar"
tools:context="net.voidynullness.android.tabitytabs.TabLayoutActivity"
android:background="#ffffff"/>
</android.support.design.widget.AppBarLayout>
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_margin="@dimen/fab_margin"
android:src="@android:drawable/ic_dialog_info"/>
</android.support.design.widget.CoordinatorLayout>
更改为(请看 “android.support.design.widget.AppBarLayout”):
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:elevation="4dp"
android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>
<android.support.design.widget.TabLayout
android:id="@+id/tab_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/toolbar"
android:background="?attr/colorPrimary"
android:elevation="6dp"
android:minHeight="?attr/actionBarSize"
app:tabMode="fixed"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"/>
</android.support.design.widget.AppBarLayout>
<android.support.v4.view.ViewPager xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/toolbar"
tools:context="net.voidynullness.android.tabitytabs.TabLayoutActivity"
android:background="#ffffff"/>
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_margin="@dimen/fab_margin"
android:src="@android:drawable/ic_dialog_info"/>
</android.support.design.widget.CoordinatorLayout>
现在,你”将能够水平和垂直滑动!
+0
滚动你的意思是水平和垂直方向? – bwegs
+0
对不起@bwegs,修正! –
相关问题
- 1. 滚动视图与滚动视图里面,当软键盘出现时,父滚动视图不滚动
- 2. 滚动视图不滚动滑动抽屉里面
- 3. Recyclerview里面的ViewPager滚动视图不工作
- 4. 滚动视图里面的一个片段不滚动
- 5. 滚动视图不滚动
- 6. 避免在里面ViewPager底视图滚动内CoordinatorLayout
- 7. 滚动纵向ViewPager与ListView里面
- 8. 为什么列表视图不滚动滚动视图里面在nativescrit angular2
- 9. NestedScrollView里面的ViewPager里面NestedScrollView:最内层的NestedScrollView不滚动
- 10. RecyclerView里面的另一个RecyclerView里面的ViewPager不滚动
- 11. Recycler视图里面查看页面滚动不刷新页面滚动时
- 12. 更新的UITextView里面的UIScrollView而滚动,使滚动视图停止滚动
- 13. CalendarView里面的滚动视图
- 14. textview里面的滚动视图ios
- 15. RecyclerView里面嵌套的滚动视图
- 16. 滚动视图与图像不滚动
- 17. Android的滚动问题webview内滚动视图与viewpager
- 18. 滚动滚动视图时自动在滚动视图内滚动地图
- 19. ViewPager内部的水平滚动视图
- 20. Android:隐藏视图,同时滚动ViewPager
- 21. 滚动滚动视图
- 22. 布局下面viewpager不滚动视图呈现
- 23. TextView在滚动视图不滚动 - Android
- 24. Android的滚动视图不滚动
- 25. 滚动视图是不可滚动
- 26. 的Android滚动视图不滚动
- 27. 不滚动的滚动视图
- 28. WheelView不滚动滚动视图内
- 29. RelativeLayout与滚动视图不滚动
- 30. BaseAdapter滚动视图不滚动
我尝试过,但它并没有区别。 水平ViewPager包含2个按钮和一个滚动视图。如果我在viewpager页面滚动按钮水平滑动,但如果我这样做了滚动视图,然后什么也没有发生,但我仍然可以通过滚动视图 – ashish21099