我想知道该clipToPadding
属性的作用ViewGroup
在Android中的作用是什么?
我已经浏览过文档和一些网站,但没有人真正解释过它的作用和含义,完全没有我真正能理解的东西,因此我认为在这里提出问题可能是一个好主意。
我想知道该clipToPadding
属性的作用ViewGroup
在Android中的作用是什么?
我已经浏览过文档和一些网站,但没有人真正解释过它的作用和含义,完全没有我真正能理解的东西,因此我认为在这里提出问题可能是一个好主意。
Answers:
您可以将clipToPadding用于滚动视图。假设您有一个列表视图,并且在顶部和底部设置了填充。通常,无论屏幕上可见哪些项目,填充都是可见的。下图显示了一个列表,其中包含10个项目,但屏幕上仅显示4个项目,并且具有默认的clipToPadding设置:
现在,如果要设置clipToPadding="false"
而不是仅将其正常应用到整个视图,它将仅将填充应用于最终项目,这是在相同场景中看到的结果:
现在,如果您要滚动到列表的顶部或底部,将会看到以下内容:
要么
实际的用法是,例如,如果有一个“浮动动作按钮”,则应将clipToPadding与底部填充结合使用,以确保可以看到整个底部项目而不会受到FAB的阻碍。
那有意义吗?
我知道评分最高的答案可以通过文字清楚地说明这一点,但正如它所说的那样,
“ 一幅图片千言万语 ”
这是一张价值1500的GIF,内容如下:
clipToPadding = "true"
右:clipToPadding = "false"
)https://www.youtube.com/watch?v=O47H4PxMf9U(Udacity 的“材料设计”课程的一部分)中clipToPadding
介绍了一种很好的用法。
使用clipToPadding="false"
使滚动视图滚动到顶部的Google Maps图标。这是由于两者在同一个内部FrameLayout
。
我建议您看一下这篇文章https://medium.com/google-developers/why-would-i-want-to-fitssystemwindows-4e26d9ce1eec#.5x2hz7q0g
或者,也许您希望您的RecyclerView在透明的导航栏下方滚动—通过将android:fitsSystemWindows =” true”与android:clipToPadding =” false”结合使用,您的滚动内容将位于控件的后面,但是当滚动至底部时,最后一项仍将填充到导航栏上方(而不是隐藏在下方!)。
定义如果填充不为零,是否ViewGroup
将裁剪其子元素并调整EdgeEffect
其填充的大小(但不裁剪)。此属性设置为true
默认。
可以是布尔值,例如“ true”或“ false”。
相关方法:
setClipToPadding(boolean)