ScrollView悬停布局实现技巧
ScrollView 里的悬停布局,挺实用的一个小技巧。适合做导航条、提示条那种需要“钉”在上面的 UI。ScrollView 本身其实不直接支持悬停,但你可以配合AppBarLayout、CollapsingToolbarLayout、NestedScrollView这些组件,效果就出来了。简单说,就是滚动到一定位置时,把你想固定的视图“搬”到顶部,响应也快,用户体验也好。
ScrollView 的滚动逻辑你得先搞清楚,不然动不动就偏了位,或者卡顿。可以通过重写onScrollChanged()
来监听滚动,还可以加个OnScrollChangeListener
,多种方式配合着用,灵活一点比较稳。
想偷个懒的朋友,也可以直接用第三方库,比如android-uiview-animator或者smoothscrollview,效果还不错,省事不少。如果你 UI 结构比较复杂,那就建议自定义个 ViewGroup 控制得更细一些,动画过渡、位置固定都能自己把控。
对了,还有个小建议:频繁监听滚动容易掉帧,性能是个坑。可以配合ViewTreeObserver
的onGlobalLayoutListener
,只在关键时刻动手,体验更流畅。
如果你页面上需要多个悬停视图,最好维护个列表,分别每个的滚动和停靠状态,别一锅炖,会乱套。想学点高级玩法?可以搭配CoordinatorLayout和自定义Behavior
,花样更多,手感更棒。
如果你正想优化页面的交互体验,ScrollView 的悬停布局绝对是个值得一试的方向,简单、实用、用户感知强,动手试试就知道啦!
stayTilescollview(title的悬停).rar
预估大小:45个文件
stayTilescollview
文件夹
.project
853B
project.properties
563B
src
文件夹
com
文件夹
stay
文件夹
test
文件夹
StayScrollView.java
949B
MainActivity.java
2KB
AndroidManifest.xml
790B
...
857.92KB
文件大小:
评论区