我扩展了 LinearLayout(垂直)以创建自定义复合组件。这又包含两个 child :
- 一个直接绘制到 View Canvas 上的自定义 View 。
- 一个 HorizontalScrollView->LinearView(Horizontal)->多个自定义 View 。
我现在想重绘自定义 View 以匹配 ScrollView 的可见内容。这样做的原因是 ScrollView 中的一长串自定义组件主要是静态的,适合提前绘制,而顶部 View 应该是高度动态的,并且与 ScrollView 中可见的任何内容相关。
我希望我把问题/想法说清楚了。我一点也不相信这是最好的方法,我很乐意听到任何关于替代解决方案的建议,或者关于每次 HorizontalScrollView 中的滚动位置发生变化时如何触发重绘事件的想法。
谢谢!
最佳答案
您可以让您的 Activity 监听 ScrollView 适配器。在适配器中,只要滚动位置发生变化,您就会在 Activity 中执行委托(delegate)。 这样, Activity 可以在 ScrollView 更改时更新其余 View 。
关于android - 如何根据兄弟 ScrollView 中的滚动位置同步一个 View 的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1635699/