如何让ScrollView知道其子项大小的变化?

时间:2016-08-04 05:55:12

标签: android android-scrollview

我一直想创建一个ScrollView,可以根据孩子大小的变化调整当前的滚动位置。因此,如果我的用户一次滚动,比如孩子高度的75%,那么当它增加/减少时,它们仍然会达到孩子更新高度的75%。

要做到这一点,显然我的ScrollView需要知道其子级大小何时更新。这看起来似乎是一项微不足道的任务,但不幸的是,到目前为止我尝试过的每一种方法都没有结果:

  • 使用OnLayoutChangeListener
  • 覆盖onLayout()
  • 覆盖onSizeChanged()
  • 覆盖onScrollChanged()

所有这些都会报告ScrollView本身的尺寸变化;不是它的孩子。这些信息对我来说没用,因为我的ScrollView不应该改变大小。

非常感谢任何反馈。

p.s。 ,据我所知this answered question看起来与我的相似。但是我的案例不需要ScrollView本身以外的其他组件的干预,而上述问题需要外部实体(可能是ScrollView)通知Activity

0 个答案:

没有答案