问题标签 [android-coordinatorlayout]

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 回答
13047 浏览

android - CollapsingToolbarLayout 的子级时不调用 Android 布局行为

我正在尝试layout_behavior在作为子元素的元素上设置 a ,CollapsingToolbarLayout但从不会在iv_header视图上调用该行为。当锚定在外部时,它可以完美地工作,例如与tv_follow视图。

该文档没有具体说明 alayout_behavior不能在AppBarLayoutor中应用,CollapsingToolbarLayout所以我不知道为什么它不起作用。

行为是从设计支持库中的 FloatingActionButton 代码中提取出来的。

0 投票
3 回答
7398 浏览

android - 带有 CollapsingToolbarLayout 的 CoordinatorLayout 与 Dialog 片段中的键盘中断

我最近决定将我的应用程序转移到使用新的支持设计库,并且最近发现了一个非常讨厌的错误。

假设我有一个 CoordinatorLayout 托管 AppBarLayout 和任何可滚动视图,无论是 ViewPager、NestedScrollView 还是具有所需滚动行为的 RecyclerView;选择显示显示键盘的对话框片段会导致 AppBarLayout 与滚动视图断开连接,并且它们不再一起滚动。

此外,滚动视图被迫调整为底部屏幕的一半,而 AppBar 布局占据了上半部分,尽管它不需要它。

该错误的视频在这里: Youtube 链接

编辑:

将 Activity 中键盘的 softInputMode 设置为“adjustPan”可以解决此问题。显然 CoordinatorLayout 不喜欢被键盘动态调整大小。

有问题的 XML 看起来像这样,但我有多个 XML 变体表现出这种行为,其中的共同元素是它们都使用 CollapsingToolbarLayout:

0 投票
1 回答
864 浏览

android - 使用带有新设计支持库的 CoordinatorLayout 的静态片段

我一直在尝试图书馆的新产品,但我无法按照我想要的方式定制它。

我将此示例代码作为参考:https ://github.com/chrisbanes/cheesesquare

我已经成功地添加了一个静态片段(包含一些带有 recyclerView 的 FrameLayout 和额外的空视图)作为 CoordinatorLayout 的子级,当滚动其中的(丑陋的)回收器视图时,它可以按预期工作。

工作要点和结果:

带有元素的回收站视图

我只是想在我的片段上方添加一个额外的 CardView,当向上拖动时,它在工具栏上也应该有相同的效果。我尝试将它们与其他各种组合一起添加到 NestedScrollView 内的 LinearLayout 中,但都没有成功。每当我点击卡片视图时,它们就会被转移,再也不会回到自己的位置。此外,拖动卡片视图仍然会淡出工具栏,但不会发生其他任何事情。

非工作要点和结果:

空回收站视图

0 投票
5 回答
63794 浏览

android - NestedScrollView 和 CoordinatorLayout。滚动问题

CoordinatorLayout我对and有一个奇怪的问题NestedScrollView(使用设计支持库 22.2.0)

使用比NestedScrollView我小的内容应该有一个固定的内容。但是,尝试向上和向下滚动内容时,我可以得到内容已被替换,并且再也不会出现在自己的位置。

这里有一个小样本:在此处输入图像描述

这里的代码:

0 投票
2 回答
9547 浏览

android - 如何在 ViewPager 和 CoordinatorLayout 中修复视图的位置

我有一个布局为:

加载的片段ViewPager具有以下布局:

如何修复FloatingActionButton片段内部的位置(防止滚动)(它与父级一起滚动)?

请注意,我无法移动FloatingActionButton到活动布局。

0 投票
2 回答
7240 浏览

android - 向下滚动触发刷新而不是显示工具栏

我开始使用新的 CoordinatorLayout 并遇到了这个问题:

演示

正如您所看到的,当我在工具栏部分可见并且 recyllerview 位于顶部位置时尝试向下滚动时,它会触发刷新事件,而不是下拉工具栏。用户必须向上滚动而不是向下滚动才能显示它。

布局 XML 看起来像这样:activity_main.xml:

片段主.xml:

SwipeRefreshLayout 位于 FrameLayout 中,因为我的应用程序中的片段中有更多元素。

任何帮助,将不胜感激。

0 投票
3 回答
12240 浏览

android - FloatingActionButton 默认边距在棒棒糖中不起作用

FloatingActionButton与 a 一起Recyclerview显示CoordinatorLayout,当单击 FAB 时,将添加一行Recyclerview。现在的问题是,当我在 API 15 中测试时,FAB 有边距,但是当我在 API 22(棒棒糖 5.1.1-Nexus 4)中测试时,我没有得到任何边距,并且 FAB 被压到屏幕边缘。

我担心 FAB 在 API 15 中有默认边距设置(没有测试其他设备),但在 API 22 中没有,或者我遗漏了什么。

我的布局代码:

在此处输入图像描述

0 投票
4 回答
12574 浏览

android - 隐藏 AppBarLayout 并将其空间留给剩余的视图

我使用新的设计库有一个非常标准的布局:

我想要做的是完全以AppBarLayout编程方式隐藏整个,暂时摆脱Toolbar它及其折叠功能。

所以我这样称呼:

禁用折叠行为(效果很好),最后是:

我将 AppBarLayout 翻译到顶部(工作顺利),并且在动画集的末尾是对View.GONE.

问题

在动画结束时,无论我是否也将可见性设置为 GONE,我都无法获得之前被AppBarLayout. 我的 NestedScrollView 仍然被限制在屏幕的下半部分,就好像 AppBarLayout 仍然存在(不是)。我该如何解决?

隐藏前:

前

隐藏后(AppBar 翻译到顶部):

后

如您所见,顶部空间是空的且无法访问。滚动视图在它之前的边距内滚动,好像可见性变化不是由CoordinatorLayout.

  • 我试过打电话coordinator.requestLayout(),没有成功。

  • 我还尝试将 AppBarLayout 设置app:anchor为我的 NestedScrollView,但这搞砸了——滚动视图甚至在隐藏之前就占据了整个屏幕。

  • 进入此hidden-AppBar 模式时,我正在考虑Behavior在滚动视图上设置一个自定义,但我无法开始。

0 投票
7 回答
39345 浏览

android - 将 windowTranslucentStatus 与 CollapsingToolbarLayout 一起使用

我试图获得与在 google play 上看到的类似的效果。

我有下面的布局来显示一个透明的工具栏,后面有一个图像。当用户滚动时,图像视图会在它滚出屏幕时产生视差效果。每当用户向上滚动时,工具栏就会返回,而图像视图仅在用户到达列表的顶部时才会返回。

这一切都很好。

问题

当我将 windowTranslucentStatus 设置为 true 时。视图中的内容上移到状态栏下方,但 CollapsingToolbarLayout 的内容上移两倍的状态栏高度(CollapsingToolbarLayout 保持正确的高度)。

这意味着图像的某些顶部被截断,操作栏现在出现在状态栏下方而不是下方。作为这样的副作用,现在 CollapsingToolbarLayout 底部的填充与状态栏的高度相同

这就是没有 windowTranslucentStatus 的样子。这里一切正常 在此处输入图像描述

windowTranslucentStatus 设置为 true 在此处输入图像描述

用户从列表底部向上滚动(不在顶部) 在此处输入图像描述

0 投票
1 回答
3349 浏览

android - CoordinatorLayout Toolbar invisible on enter until full height

Included in my activity_main.xml's DrawerLayout is a CoordinatorLayout called content_layout.xml. Within this CoordinatorLayout is my AppBarLayout containing a Toolbar, then a LinearLayout for a fragment's content.

When a fragment containing a RecyclerView is scrolled up, the toolbar exits successfully. The problem lies when scrolling down to bring the toolbar back. The toolbar does not appear until the full height of the toolbar has been scrolled and as such leaves an unsightly white box in its place as shown.

toolbar

content_layout.xml

The toolbar is initialized via MainActivity's onCreate():

I would appreciate any suggestions as to resolving this. Thank you.