如何解决Android animateLayoutChanges不适用于带有fillViewport true的ScrollView
我正在尝试用LinearLayout
为HorizontalScrollView
中包含的fillViewport=true
的布局更改设置动画。我的想法是,我有一个动态的按钮栏,应该分布以填充可用空间,但是如果按钮太多,则可以开始向左/向右滚动以查看所有按钮。
这一切都很好,并且如果animateLayoutChanges=true
具有LinearLayout
,则在HorizontalScrollView
上使用fillViewport=false
会很顺利,但是只要将其设置为真实的,抖动的动作开始发生:
您会注意到,设置按钮会直接跳到新位置,而右边的两个按钮最初会跳,但是会稍微动画到最终位置。
对我来说,似乎比较清楚的是,问题是fillViewport=true
引入的额外x偏移是立即应用的,而按钮的其余平移则按常规进行动画处理。
是否有办法让动画也考虑fillViewport=true
的效果?
仅在需要的情况下提供详细信息:我的HorizontalScrollView包含一个LinearLayout,该线性布局的每个按钮都包含一个包含Button的FrameLayout(为避免拉伸按钮的可单击区域而需要)。我也尝试将animateLayoutChanges应用于滚动视图,框架,按钮等,但是似乎没有任何组合可以起到作用。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。