【译文】AppBarLayout的越界滚动行为

  • 时间:
  • 浏览:0

大神们,这里有个MatrixScaler类,我这么 时间去完成它。是因为 愿意改变尺寸的视图是ImageView,过后设置了ScaleType为MATRIX,你这一类将还还都可以用使用矩阵的最好的土办法来改变图像的尺寸。

接下来,大家前要获取愿意在拖到边界前要改变尺寸的视图的一个 实例。最好的最好的土办法什么都我在onLayoutChild()最好的土办法中获取:

你这一最好的土办法对大家实现尺寸改变来说太重要了。什么都有我列出了你这一清况 前要改变尺寸,你这一清况 不前要:

是因为 这是默认的AppBarLayout.Behavior,什么都有建议不还还都可以在依赖视图是AppBarLayout的过后 起作用。

很不幸,Youtube音乐应用在大家国家不可使用,我尝试着通过各种盗版网站来获取该应用,但我仍然无法看了在你这一应用上所处了你这一。感谢这位redditor,在我的请求下,他在/r/materialdesign打开了一个 thread过后发表一段录制的视频,我才有是因为 看了你这一行为。

在内容滚动的瞬间,真正重要的问题图片也有头绪了。CoordinatorLayout.Behavior提供了一个 onNestedScroll() 最好的土办法,当滚动进行的过后 你这一最好的土办法会被调用,过后当内容滚动到边界的过后 也会调用。最后一个 参数dyUnconsumed和dxUnconsumed提供了 未被该行为的目标视图填满的像素值。

是因为 大家先前这么 在应用线程池池中显示设置,会设置ViewScaler为默认的Scaler。

Youtube视频app的真实截图,是因为 的行为

你这一类实现了AppBarLayout应该如何改变它的底部以及视图应该 如何改变尺寸的逻辑。大多数行为都依赖次责的未填充的像素。大家还还都可以为最大次责值设置一个 约束值,另一个 还还都可以很容的找到要如何改变AppBarLayout 底部和改变视图的尺寸。ParentScaler是ViewScaler的父类,它能让AppBarLayout近乎平滑的改变尺寸。让我都这么这里贴几瓶 代码了,是因为 你有兴趣,还还都可以从这里获取代码。

过后大家前要保证不还还都可以在垂直滚动的过后 起作用:

根据我所看了的,我首先想到的什么都我专辑封面是倒入一个 AppBarLayout里面,过后在滚动区域拖到边界的过后 尺寸会所处变化。让大家假定你这一 猜想是正确的过后用“Behavior”你这一术语表示它。依鄙人之见,是因为 我的猜想是正确的,谷歌应该会在Material Design文档的滚动次责提供一个 越界滚动的使用说明。

当嵌套的overscroll停止的过后 ,大家前要将视图的边界和大小重置到它们的原始值。

大家的目标什么都我保证AppBarLayout.Behavior的详细性,在此基础上再创建一个 扩展的行为。过后: