Articles of android coordinatorlayout

滚动时CollapsingToolbarLayout并隐藏工具栏

我正在尝试使用CoordinatorLayout和CollapsingToolbarLayout创建一些组合布局。 在第一个状态,当我们在最顶层的页面上,并且还没有滚动时,我希望工具栏如下所示(是的,我做到了): 在第二种状态下,当开始向下滚动时,图像和工具栏应该消失,如下所示(仅显示选项卡): 在最后一个状态,一旦我在列表中的某个点(但不是列表的顶部),我想开始向上滚动,一旦我开始向上滚动,我想要工具栏(而不是图片中消耗的工具栏)开始哇哇,如下图所示(如果没有到达列表的顶部,图像将不会显示,只有工具栏): 我能够实现第一个状态,但另一个状态是有问题的,一旦工具栏在CollapsingToolbarLayout中实现,我在CollapsingToolbarLayout组件之外可以做的灵活性不明确。 我无法隐藏工具栏,如果我这样做,那么只有在我到达顶部时它才会显示。 无论如何,我当前的XML(如下所示)处于第一张图片实现的状态,但是一旦我开始向下滚动,工具栏就会停留在顶部并且不会隐藏。 注意:我必须告诉工具栏保持“pin”,因为如果我没有,那么工具栏内的信息就会消失,只有一个空的工具栏会显示(这是另一个post,但知道为什么会发生这种情况仍然很有趣?) 。 这是我当前的xml: </android.support.design.widget.CoordinatorLayou

如何创建类似于Play报亭布局的内容

我正试图“重新创建”(类似于)Play报亭的布局。 根据文档,CoordinatorLayout的一般结构是 … …. 除了我查看报亭应用程序外,我能看到的是SomeScrollView是一个用于TabLayout的ViewPager。 对于我的特殊情况,我的主要问题是我的SomeScrollView必须是片段的某种容器。 基本上我想要的是 ——- | A | | | ——- | B | | | ——- 其中A是可折叠部分,B是滚动部分。 同样,对于我的情况,B是动态片段的容器。 所以A将有一个TabLayout,当用户点击一个标签时,它会导致B中的可见片段发生变化。 B中的片段将包含RecycleView或可滚动的TextView。 (实际上其中一个片段是一个FrameLayout,它包含一个RecycleView和一个TextView,其中任何一个都是可见的) 这是我到目前为止的代码: 有人请帮我完成吗?

NestedScroll中的可点击CardView不会触发滚动

我有一个带有CoordinatorLayout,AppBarLayout和NestedScrollView的布局,在NestedScrollView中我有多个CardViews,一切正常,直到我将CardViews设置为可点击,然后如果我在CardView中开始滚动,则滚动不起作用。 这是我的布局: …

CoordinatorLayout在另一个CoordinatorLayout里面

另一个CoordinatorLayout内的CorodinatorLayout ,滚动子视图也应该滚动Parent CoordinatorLayout 。 我有一个带有ViewPager的coordinatorLayout ,它包含不同的Fragment ,以便在Scroll隐藏tabLayout 我有另一个具有viewPager 。 此fragment在父片段(父Coordinator layout )的ViewPager中膨胀。 问题是在childViewpager中childViewpager子片段只反映在子fragment coordinator layout ,而不是在我需要做的隐藏tablayout的父coordinator layout中。 结构是: CoordinatorLayout(p) ->(tablayout(p) & ViewPager(p) -> CoordinatorLayout(c) ->(tablayout(c) & ViewPAger(c) ->recyclerView(cc))) p -> parent; c -> child; cc -> child to child 如何在滚动回收器视图上进行操作将影响协调器布局,以便工具栏tablayout(p)将被隐藏。

隐藏工具栏滚动与片段内的recyclerview

当滚动片段内的recyclelerview时,我正试图让工具栏在滚动时折叠。 首先,inheritance我的主要布局: 所以你可能猜到我的片段被加载到@id/container 。 我的第一个片段包含recyclerview,我在该recyclerview上设置app:layout_behavior=”@string/appbar_scrolling_view_behavior” 。 这确实有效,工具栏在滚动时折叠。 问题是工具栏覆盖了片段未折叠时的顶部内容。 在片段容器中添加一个等于工具栏大小的上边距只会在工具栏崩溃时(显然)导致留下空白。 什么东西在这里失踪? 有任何想法吗? 编辑:根据要求,这是包含recyclerview的片段的布局:

Coordinatorlayout adjustresize不起作用

我的代码(以及更多):我有一个协调员布局如下 在框架布局中,我正在使用位于底部的编辑文本为自定义视图充气。 编辑文本和自定义视图显示正常。 我在清单中定义了android:windowSoftInputMode =“adjustResize | stateHidden”。 我的问题:在点击编辑文本以调出软键盘时,它会重叠下面的内容而不是调整FrameLayout的大小。 当软键盘出现时,我无法让FrameLayoutresize。 任何帮助将不胜感激 我试过的事: 更新了22.2.1的设计支持库 添加了android:layout_gravity =“fill_vertical”作为FrameLayout中的属性。

半透明/透明状态栏+ CoordinatorLayout +工具栏+片段

我有以下设置: 我正在使用AppCompat MainActivity,包含一个片段并有一个工具栏,在向下滚动时隐藏 Fragment与RecyclerView 所有适合屏幕的视图都在xml布局中具有相应的android:fitsSystemWindows=”true” 问题是,在这种情况下我无法使状态栏透明。 我所做的是: 创建活动并调用setContent 然后我尝试调整活动以编程方式获得如下的半透明工具栏: @TargetApi(Build.VERSION_CODES.LOLLIPOP) public void themeNavAndStatusBar(Activity activity) { if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) return; Window w = activity.getWindow(); w.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); w.setFlags( WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION, WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION); w.setFlags( WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS, WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); w.setNavigationBarColor(activity.getResources().getColor(android.R.color.transparent)); w.setStatusBarColor(activity.getResources().getColor(android.R.color.transparent)); } 用片段替换活动( @+id/frame_container )中的占位符 在这种情况下,状态栏是纯色的,并且未在其下方绘制视图…为什么? 我想要的是 我想要一个工具栏,它滚动屏幕并完全隐藏,而此工具栏下面的内容应该适合屏幕,并在透明导航栏后面绘制。 布局 这是我的主要活动: 这是我的片段,将放在主要活动中: 编辑 – 截图 我使用浅色/深色基本主题并手工制作主题(因为用户可以选择任何颜色作为主要/强调颜色),所以不要介意工具栏是白色的(它是默认的主题背景颜色和原色)。 我还添加了一个黑色边框,以便您看到活动结束的地方…… 第一个屏幕截图:显示工具栏,没有滚动任何内容 第二个屏幕截图:我刚刚开始滚动=>工具栏现在应该滚动 第三个屏幕截图:主要内容现在应滚动到导航栏下方… 最后,我当然会让工具栏和导航栏半透明,以获得更好的视觉效果……

Android Material Design个人资料页面

我是android和材料设计的新手。 有人可以帮助我指出任何帮助我按照Google的材料设计指南构建个人资料屏幕的网站吗?

CoordinatorLayout即使使用windowTranslucentStatus和fitsSystemWindows也不会在状态栏后面绘制

我试图在状态栏后面绘制视图,如下所示: 我尝试用推荐的技术产生这种效果,但我明白了: 从屏幕截图中可以清楚地看到,我的应用内容都没有被绘制在状态栏后面。 有趣的是,不知何故,Nav Drawer设法在状态栏后面绘制: 我做的东西: 使用支持库小部件 – CoordinatorLayout , AppBarLayout , Toolbar , DrawerLayout windowTranslucentStatus在我的应用主题中设置为true fitsSystemWindows在我的CoordinatorLayout上设置为true 这是我的应用主题: @color/colorPrimary @android:color/transparent @color/colorAccent true 这是我的活动布局: 我的活动布局中的FrameLayout被替换为此片段布局:

滚动不适用于CoordinatorLayout + parallax image + BottomSheetLayout

介绍 我有一个活动,它使用CoordinatorLayout , AppBarLayout和CollapsingToolbarLayout实现具有视差标题图像和滚动内容的常见模式。 我的xml布局如下所示: 正如您在下面的gifanimation中看到的,一切正常。 您可以从内容NestedScrollView以及Toolbar或视差View滚动整个屏幕。 问题 谷歌推出了BottomSheetBehavior类(Android设计支持库23.2 ),以帮助开发人员实现Bottom表 。 我的带有Bottom工作表的xml布局如下所示: 结果如下: 如你所见,如果我开始从视差View滚动,我现在无法滚动。 从内容NestedScrollView和Toolbar滚动按预期工作。 题 如何管理滚动View也适用于视差View (与第一个gifanimation中的方式相同)? 似乎BottomSheetBehavior拦截触摸事件并阻止AppBarLayout (AppBarLayoutBehavior)处理滚动。 但奇怪的是,从Toolbar滚动工作,视差View和Toolbar都是AppBarLayout 。