首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

CoordinatorLayout工具栏不会隐藏在循环视图滚动上

CoordinatorLayout是Android Support Library中的一个布局容器,用于实现复杂的交互效果和协调子视图之间的行为。它可以用于实现工具栏的隐藏和显示效果。

CoordinatorLayout具有以下特点:

  1. 协调子视图之间的行为:CoordinatorLayout可以通过定义不同的Behavior来协调子视图之间的交互行为,例如工具栏的隐藏和显示、子视图的联动效果等。
  2. 支持滚动事件:CoordinatorLayout可以监听子视图的滚动事件,并根据滚动的位置和方向来触发相应的行为,例如工具栏的隐藏和显示。
  3. 灵活的布局方式:CoordinatorLayout支持自定义子视图的布局方式,可以通过设置不同的LayoutParams来实现各种布局效果。

在实现CoordinatorLayout工具栏不会隐藏在循环视图滚动上的效果时,可以使用AppBarLayout和CollapsingToolbarLayout来实现。具体步骤如下:

  1. 在布局文件中使用CoordinatorLayout作为根布局,并将AppBarLayout作为子视图添加到CoordinatorLayout中。
  2. 在AppBarLayout中添加CollapsingToolbarLayout作为子视图,并设置CollapsingToolbarLayout的属性,例如标题、折叠模式等。
  3. 在CollapsingToolbarLayout中添加Toolbar作为子视图,并设置Toolbar的属性,例如标题、菜单等。
  4. 在CollapsingToolbarLayout中添加循环视图(例如RecyclerView)作为子视图,并设置循环视图的属性。
  5. 在代码中,通过设置AppBarLayout的滚动监听器,根据滚动的位置和方向来控制工具栏的隐藏和显示。

以下是一个示例代码:

代码语言:txt
复制
<androidx.coordinatorlayout.widget.CoordinatorLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <com.google.android.material.appbar.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <com.google.android.material.appbar.CollapsingToolbarLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            app:title="Title"
            app:layout_scrollFlags="scroll|exitUntilCollapsed">

            <androidx.appcompat.widget.Toolbar
                android:layout_width="match_parent"
                android:layout_height="?attr/actionBarSize"
                app:title="Title"
                app:layout_collapseMode="pin" />

        </com.google.android.material.appbar.CollapsingToolbarLayout>

    </com.google.android.material.appbar.AppBarLayout>

    <androidx.recyclerview.widget.RecyclerView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:layout_behavior="@string/appbar_scrolling_view_behavior" />

</androidx.coordinatorlayout.widget.CoordinatorLayout>

在这个示例中,工具栏(Toolbar)会随着循环视图(RecyclerView)的滚动而隐藏和显示。通过设置CollapsingToolbarLayout的折叠模式(app:layout_scrollFlags)为scroll|exitUntilCollapsed,可以实现工具栏在循环视图滚动时的隐藏和显示效果。

推荐的腾讯云相关产品:无

参考链接:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Android开发笔记(一百三十五)应用栏布局AppBarLayout

可是仅仅使用Toolbar的话,还是有些呆板,比如说Toolbar固定占据着页面顶端,既不能跟着主体页面移上去,也不会跟着主体页面拉下来。...,是一半还是全部,是自动还是手动等等。...1、AppBarLayout的滚动依赖于主体视图的滚动,与主体视图相对应的,可将AppBarLayout称作头部视图。既然一个页面分为头部和主体两部分,那么就存在谁先谁后的问题了。...3、大家都知道ViewPager是左右滚动的翻页视图,用户通过手势把页面横向拉动一段距离后松开,系统会判断接下来是自动左还是自动右,总之最后用户看到的是一个完整的页面,而不是拉到一半的页面。...3、exitUntilCollapsed : 该标志保证页面上至少能看到最小化的工具栏不会完全看不到工具栏。具体的滚动说明如下所示: 向上滚动:头部先往上收缩,一直滚到折叠的最小高度。

1.9K40

Android开发笔记(一百三十六)可折叠工具栏布局CollapsingToolbarLayout

指定子视图(通常是Toolbar)的折叠模式。...--parallax : 视差模式,随着CollapsingToolbarLayout的收缩与展开,当前视图也跟着收缩与展开。...CollapsingToolbarLayout折叠多少距离,则当前视图也移动多少距离,通俗地说,就是夫唱妇随。...2、enterAlways : 头部与主体先一起滚动,头部滚到位后,主体继续向上或者向下。 同时声明scroll和enterAlways,滚动效果如下图所示: ?...3、exitUntilCollapsed : 该标志保证页面上至少能看到最小化的工具栏不会完全看不到工具栏。具体的滚动说明如下所示: 向上滚动:头部先往上收缩,一直滚到折叠的最小高度。

3.1K30

【翻译】MotionLayout实现折叠工具栏(Part 2)

通过上一篇文章我们了解了基本的折叠工具栏动画行为,使用的是 MotionLayout ,第一次尝试的效果与在 CoordinatorLayout 中使用 CollapsingToolbarLayout...让我们先看下 CoordinatorLayout 版本的实现效果,注意图片在工具栏几乎快要完全折叠之前是不会开始渐变到主色彩动画的: ?...目前来说,发生的情况是:图片的透明度在过渡动画还没有达到 60% 之前是不会发生变化的(也就是至少超过一半的折叠状态下不发生变化),接下来会慢慢开始淡出,直到工具栏达到 90% 折叠时完全透明。 ?...现在已经更加接近我们所见到的 CoordinatorLayout 所实现的标准动画了。...但是在目前来说,添加 tools:showPaths="true" 这段代码能够让 MotionLayout 计算并显示这三个被过渡动画所影响的视图控件的轨迹路线:标题文本控件(顶部,中心左侧),工具栏的海滩小排屋图片

1.6K30

绝对想尝试的创意 Android 库,你关注了吗?| 码云周刊第 43 期

项目简介: 正如名字所说,SmartRefreshLayout 是一个“聪明”或者“智能”的下拉刷新布局,由于它的“智能”,它不只是支持所有的 View,还支持多层嵌套的视图结构。...支持嵌套多层的视图结构。 支持所有的 View(AbsListView、RecyclerView、WebView....View)。...支持和 ListView 的无缝同步滚动 和 CoordinatorLayout 的嵌套滚动。 支持自动刷新、自动上拉加载(自动检测列表惯性滚动到底部,而不用手动上拉)。...支持设置主题来适配任何场景的 App,不会出现炫酷但很尴尬的情况。 支持设多种滑动方式:平移、拉伸、背后固定、顶层固定、全屏。 支持所有可滚动视图的越界回弹。...另外,本项目基于 Android 源码环境开发,需要在 Android 源码环境下编译,由于本人不会 PhotoShop,所以测试截图中有一个 menu 按键图标与其他图标风格不符,请谅解。

1.2K90

界面无小事(九): 做个好看的伸缩头部

如果在此之前的任何兄弟视图没有此标志, 则此值无效. exitUntilCollapsed 退出(滚动屏幕)时, 视图将滚动直到“折叠”. 折叠高度由视图的最小高度定义。...一旦滚动视图到达其滚动范围的末尾, 该视图的其余部分将滚动到视图中. 折叠高度由视图的最小高度定义....喜闻乐见的吸附效果, app:layout_scrollFlags="scroll|snap", 例如, 还剩下25%没完, 松手就自己滚出去; 如果还有75%没完, 松手直接全部显示....enterAlwaysCollapsed ---- CoordinatorLayout配合Snackbar 先来看看自带的点击悬浮按钮的效果: ?...自动上移 如果不是CoordinatorLayout, 可就没有这种效果了哦. ---- 自定义伸缩头部 再来看一个改动更大, 更自定义的. 先上效果图: ?

95120

Astro 4.0:全新升级,为现代网站构建赋能

直接在浏览器中尝试Astro 4.0,或在终端运行以下命令开始一个新项目: # 创建一个新的Astro 4.0项目: npm create astro@latest 大多数现有代码库升级到Astro 4.0时将不会遇到问题...检查您的页面,发现棘手的可访问性问题,并使用自定义应用程序和第三方工具扩展工具栏本身。 这个工具栏只会在开发期间出现在浏览器中,而不会包含在最终的产品构建中。...它隐藏在页面底部,当您靠近时会弹出,提供多种不同的应用程序: Inspect:突出显示页面上的交互式UI组件“岛屿”。这个工具应用旨在利用Astro独特的“岛屿”架构。...自视图转换首次推出以来,我们不断改进对它的支持。...如今,我们已经完成了一个完整的循环:docs.astro.build现在由Starlight提供支持!

38010

Android开发笔记(序)写在前面的目录

Toolbar Android开发笔记(一百二十)两种侧滑布局 Android开发笔记(一百二十二)循环视图RecyclerView Android开发笔记(一百二十三)下拉刷新布局SwipeRefreshLayout...一百二十)两种侧滑布局 弹出菜单、列表弹窗 PopupMenu、ListPopupWindow Android开发笔记(一百二十一)列表弹窗 循环视图 RecyclerView Android开发笔记...(一百二十二)循环视图 下拉刷新布局 SwipeRefreshLayout Android开发笔记(一百二十三)下拉刷新布局 画廊 Gallery Android开发笔记(一百二十四)自定义相册 图像切换器...NavigationView Android开发笔记(一百三十三)导航视图NavigationView 协调布局 CoordinatorLayout Android开发笔记(一百三十四)协调布局CoordinatorLayout...(一百三十四)协调布局CoordinatorLayout 应用栏布局 AppBarLayout Android开发笔记(一百三十五)应用栏布局AppBarLayout 嵌套滚动视图 NestedScrollView

2.9K40

MySQL8.0新特性之原子DDL语句

④:DDL操作的可见行为是原子的,这会更改某些DDL语句的行为 注意: 原子或其他DDL语句式结束当前会话中处于活动状态的任何事务,就好像您COMMIT在执行语句之前完成了一样。...如果由于文件系统错误或服务器暂停而导致数据库目录的删除失败, DROP DATABASE则不会事务。...要避免此故障情形,请在DROP VIEW语句中使用IF EXISTS语法以防止对不存在的视图发生错误。 3.6、不再允许部分执行帐户管理声明。帐户管理语句对所有命名用户成功或回,如果发生错误则无效。...立即刷新重做日志可以避免DDL操作修改数据文件的情况,但是mysql.innodb_ddl_log由这些操作产生的对表的更改的重做日志 不会持久保存到磁盘。这种情况可能会在回或恢复期间导致错误。...该 mysql.innodb_ddl_log表是隐藏在mysql.ibd数据字典表空间中的隐藏数据字典表 。

67820

WindowsInsets 和 Fragment 过渡动画

Fragment A 使用了 CoordinatorLayout 和 AppBarLayout,而 Fragment B 使用自定义 WindowInsets 来处理(通过一个 OnApplyWindowInsetsListener...然而在我的场景中,这两个 fragment 的视图都想要处理和消费 WindowInsets,因为它们都期望在屏幕上显示唯一的“主”视图。...如果第一个子 view(就是这里的 Fragment A)消费了 WindowInsets,任何后续的子 view(就是这里的 Fragment B)都不会得到它们,我们最终就会得到这种情况。...如果你要在 fragment 里面处理 WindowInsets,无论是式(通过使用 AppBarLayout 等)还是显式,你需要确保请求了一些 WindowInsets。...由于有时你的两个 fragment 可能提供完全相同的值,总体的值不会改变,因此系统将忽略这个“改变”。

97630

是时候开始用C#快速开发移动应用了

我们的Demo中用到的组件包括: AppBarLayout + Tab Layout 实现 图1中的Tab视图 Drawer Layout + Navigation View 实现图3中的左侧菜单 CoordinatorLayout...CollapsingToolbar Layout + NestedScrollView (图2中的页面往下图片缩小直到消失的效果实现 ) Recycler View (ListView的加强版,适合数据量大的...List展示) 由于后面的三个CoordinatorLayout、CollapsingToolbar以及RecyclerView相对来说会有些复杂,所有我们后面会留专门的篇幅来讲,感兴趣的同学可以自己先研究起来或者关注后面的博客...我们主要看一下C#如何在ViewPager里面放视图同时与TabLayout关联起来。...注:OnDateSelected这个事件是我们自己声明的,而这个声明方法,相信大家不会觉得陌生。

2.5K60

drop、truncate和delete的区别

Language,这个操作会被放到 rollback segment中,事务提交后才生效),执行delete操作时,每次从表中删除一行,并且同时将该行的的删除操作记录在redo和undo表空间中以便进行回(...二、truncate truncate是DDL,会式提交,所以,不能回不会触发触发器。...不会记录日志,所以执行速度很快,但不能通过rollback撤消操作(如果一不小心把一个表truncate掉,也是可以恢复的,只是不能通过rollback来恢复)。...truncatetable不能用于参与了索引视图的表。 三、drop drop是DDL,会式提交,所以,不能回不会触发触发器。 drop语句删除表结构及所有数据,并将表所占用的空间全部释放。...3、如果想删除部分数据用delete,注意带上where子句,回段要足够大; 如果想删除表,当然用drop; 如果想保留表而将所有数据删除,如果和事务无关,用truncate即可; 如果和事务有关

52630

pycharm入门教程(非常详细)_php网站部署教程

4、配置一个部署服务器   单击主工具栏中的设置按钮来打开Settings/Preferences对话框,选择 Deployment页面(也可以通过主菜单上的Tools→Deployment→Configuration...此时切换到本地视图。   ...选择待同步的文件,单击工具栏上的 按钮:   13、自动上传至缺省服务器   当用户需要在服务端使用与Pycharm工程中完全相同的文件时,自动上传功能就显得很用帮助。...(2)在server configurations列表中,单击缺省按钮:   15、启用自动上传功能   设置完缺省服务器之后,接下来就是开启自动上传功能。...只上传文件自身的更改情况,如果我们通过其他途径对文件进行了更改,例如通过VCS branch、transpilation of SASS 或者 LESS or a File Watcher进行的更改,Pycharm是不会将这些更改自动上传的

1.5K50

mysql 谈谈innodb存储引擎

::rollback函数中将不会调用ha_rollback_low的引擎层回逻辑。...一个主要的用途就是用于式锁转换,需要为记录中的事务id所对应的事务对象创建记录锁,通过该集合可以快速获得事务对象 事务回段 对于普通的读写事务,总是为其指定一个回段(默认128个回段)。...事务视图ReadView 前面已经多次提到过ReadView,也就是事务视图,它用于控制数据的可见性。...,会将其加到该链表上,以便下次重用; MVCC::m_views 这里存储了两类视图,一类是当前活跃的视图,另一类是上次被关闭的只读事务视图。...当有可能undo被访问到时,purge_sys将不会去清理undo log,如上所述,purge_sys只会去清理最老ReadView不会看到的事务。

1.6K20

CAD2007操作教程下

如何将单个视口变成四个视口方法 视口工具栏 中点击显示“视口”对话框 ,选四个相等视图,改为三维,在左上角为俯视图,右上角为主视图(前视图),左下角为左视图,右下角为--—等轴测。...u 消图形 在绘制三维曲面及实体时,为了更好地观察效果,可选择“视图”菜单下的“消”命令(HIDE),暂时隐藏位于实体背后而被遮挡的部分。...u 着色图形 在AutoCAD中,使用“视图”菜单下的“着色”子菜单中的命令,可生成“二维线框”、“三维线框”、“消”、“平面渲染”、“体渲染”、“带边框平面渲染”和“带边框体渲染”多种视图。...3、 消:显示用三维线框表示的对象,同时消表示后向面的线。 4、 平面着色:用于在多边形面之间着色对象,但平面着色的对象不加体着色的对象那样细致、光滑。...输入材质可将该材质及其参数复制到图形的材质列表中,材质并不会从库中删除。 要从图形中向材质库输出材质,请在“当前图形”下的列表中选择一种材质,然后选择“输出”。

8.6K30

transaction (2)—mysql进阶(五十八)

mysql> ROLLBACK; Query OK, 0 rows affected (0.00 sec) 值得注意的是,如果在平时开发中,遇到异常,mysql会自动帮我们回,这里的回是我们自己手动的...支持事务的存储引擎 我们前面说了,mySIAM是不支持事务的,而支持事务的存储引擎是innoDB,如果开启事务后,mySIAM存储引擎insert into一条数据,然后rollback,这时候 数据不会...但如果是innoDB开启事务后,insert into一条数据,然后rollback,这时候数据会回不会查询到那条数据。...式提交 前面说过,当我们显式start transaction 和begin ,或者吧系统变量autocommit设置成off,则不会自动提交事务,但如果我们 没有写commit或者rollback,...当我们定义或者修改数据库对象的数据定义语言(DDL):所谓的数据库对象,指的是数据库,表,视图,存储过程等等这些东西,当我们使用create ,alter,drop等语法对这些数据库对象进行操作的时候,

32320

Oracle事务和对象详解

3)DDL语句:即create、drop等语句,这些语句会使事务自动式提交 4)结束程序:输入exit退出数据库,则自动提交事务;或者意外终止、出现程序崩溃,则事务自动回。...4)视图将应用程序与基表定义的修改进行了隔离,表结构的修改不会影响视图结构。...默认为nocycle,不进行循环生成。 cache :预先分配出来的序列,保存于缓存中,可用于快速访问序列号。...3)DDL语句:即create、drop等语句,这些语句会使事务自动式提交 4)结束程序:输入exit退出数据库,则自动提交事务;或者意外终止、出现程序崩溃,则事务自动回。...4)视图将应用程序与基表定义的修改进行了隔离,表结构的修改不会影响视图结构。

1.1K20
领券