问题标签 [coordinator-layout]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1523 浏览

android - 自定义 CoordinatorLayout.Behavior 和 RecyclerView 滚动问题

我有一个CoordinatorLayout有两个孩子,一个View充当标题和一个RecyclerView

我将填充动态设置RecyclerView为标题的大小并将其设置clipToPaddingfalse,因此RecyclerView显示在标题下方,当用户向上滚动时,RecyclerView显示在标题视图上方。

我做了一个自定义CoordinatorLayout.Behavior,以便在用户向上滚动时实现淡出视图,list并在标题必须再次可见时淡入AlphaBehavior

但我面临一个问题:如果用户滚动速度非常快,则行为事件无法正确调用。该scrollY成员与总滚动关系不佳,并且该totalScrollY成员(通过计算来自 的滚动获得RecyclerView)不正确。即使我试图firstCompletelyVisibleItem在事件中找到 ,但是当达到列表的开头onStopNestedScroll时它会返回位置 2 或 3 。recyclerView

0 投票
1 回答
538 浏览

android - android.support.v4.widget.SwipeRefreshLayout 在 android.support.design.widget.AppBarLayout 内部时不会滑动

目标是有一个折叠toolbar和一个SwipeRefreshLayout有项目的。为了能够使用支持库,我使用CoordinatorLayoutwhich hosts an AppBarLayout. 那AppBarLayout有一个toolbar并且SwipeRefreshLayout有一个网格视图。使用app:layout_scrollFlags="scroll|enterAlways"折叠和打开没有问题toolbar,但是SwipeRefreshLayout不会一直向下滑动,即它被卡住了。取出SwipeRefreshLayoutAppBarLayout,它滚动正常,但这次工具栏没有折叠。下面是布局xml。任何帮助表示赞赏。

PS:我使用此链接折叠工具栏实现:

这是我的布局:

0 投票
1 回答
4503 浏览

android - 带有 TabLayout 的无限 ViewPager

我已经在原位https://github.com/JoachimR/AnyDayViewPager实现了一个无限 ViewPager 。但是,我宁愿将 CoordinatorLayout 与 TabLayout 一起使用,而不是使用 PagerTabStrip。但是当使用 viewpager 设置 TabLayout 时,(我假设是因为有“无限数量的 ViewPager Fragments”)应用程序卡住了。

我该如何解决这个问题?

这是代码(我没有更改的其他文件可以在JoachimR/AnyDayViewPager找到,例如FragmentContent.javaCachingFragmentStatePagerAdapter.javaTimeUtils.java等)

MainActivity.java

activity_main.xml

0 投票
2 回答
1171 浏览

android - 使用 Google Maps API 缩放时禁用滚动

当我尝试平移谷歌地图时,CoordinatorLayout 向下滚动,当然我想平移地图。如果我在地图之外然后尝试平移,那么它可以完美地工作,但这不会是一个很好的最终用户体验。

OnTouchListener 解决了部分问题……但前提是我水平平移。当我的手指向上或向下移动时,它就会停止平移地图。我怎样才能解决这个问题?

XML

0 投票
4 回答
37970 浏览

android - ConstraintLayout vs Coordinator 布局?

要实现什么:ConstraintLayoutCoordinatorLayout在 android 中进行适当的材料设计?

0 投票
1 回答
1684 浏览

android - CoordinatorLayout 上的白色非活动底部空间

我有 CoordinatorLayout 的 xml 文件

我有另一个xml文件,我把它放在协调器布局上

我发现了空白空间的错误,它覆盖了我的窗口的一部分并且不可点击。这是下面的屏幕截图: 不可点击的非活动底部空间 我注意到当我从 ViewPager 中删除 app:layout_behavior="@string/appbar_scrolling_view_behavior" 时,错误消失了。但是我的标签名称也消失了。我认为它会创建一些不可见的工具栏或类似的东西。

0 投票
1 回答
382 浏览

android - 展开底页时如何折叠现有内容?

我有一个包含 aCoordinatorLayoutScrollViewa的布局BottomSheet。当我将 的状态设置BottomSheet为扩展BottomSheet重叠的内容时ScrollView。我希望 的高度ScrollView减少 的高度BottomSheet。我怎样才能做到这一点?

我现在打算使用 a BottomSheetDialog

谢谢!

0 投票
1 回答
944 浏览

android - 来自 CoordinatorLayout.Behavior 的 onDependentViewChanged 一直被调用

我实现CoordinatorLayout.Behavior并覆盖onDependentViewChanged了函数,但它让我担心它每隔几毫秒就会触发一次,即使滚动视图保持不动。

如果我从这里返回 false,那不会改变onDependentViewChanged

我找不到这方面的任何信息,但是这件事向我的日志发送垃圾邮件看起来不像是正确的行为。会耗尽电池。

我的简化布局如下所示:

0 投票
1 回答
1481 浏览

android - Android CoordinatorLayout、Listview 和固定工具栏

我有一个布局,顶部有一个工具栏,下面是 2 个工具栏大小的栏,下面是一个列表视图。当有人在列表视图上滚动时,工具栏下的 2 个栏应该向上滚动并在工具栏下消失。

我尝试将 app:layout_scrollFlags="scroll|enterAlways" 仅放在那些栏而不是工具栏上,但它们不会响应滚动事件。如果我也将相同的滚动标志放在工具栏上,它们都会响应,但我希望工具栏始终显示。如果我将两个栏移到工具栏上方,它可以工作,只有两个栏响应,但现在工具栏位于栏下方,这不是我想要的显示。

0 投票
0 回答
514 浏览

android - 在嵌套视图/片段上滚动时不调用 AppBarLayout.Behaviour

我有一个带有 AppBarLayout 的折叠工具栏的 CoordinatorLayout。我的布局文件层次结构看起来像(省略了 layout_width 等参数):

AppBarLayout 中的扩展区域是片段,我动态添加:

总的来说,它工作正常,但是如果用户在展开/折叠中间停止滚动,我需要自动展开/折叠 AppBarLayout(因此当用户从屏幕上移开手指时,AppBarLayout 应该展开或折叠,不允许中间状态)。对于这个任务,我决定使用自定义行为:

我的问题来了:当 AppBarLayout 折叠并且用户开始展开它时,它工作得很好。但在相反的情况下,当 AppBarLayout 展开时 - 如果用户在 NestedScrollView 上开始滚动手势 - 我的 Behavior 类被调用并且很好。但是,如果用户在 AppBarLayout 内容上启动滚动手势 - 不会调用 Behavior,但 AppBarLayout 开始对滚动手势做出反应。在这种情况下,如果用户在过渡过程中停止滚动手势,我无法检测到它。有人知道这种行为的原因吗?是否可以调用 Behavior 类?如果不是,如何确定用户在嵌套视图上执行滚动?