我正在尝试创建一个自定义滚动组件(ScrollView
,ListView
,WebView
),其滚动区域(内容区域)可以通过编程方式扩展到内容之外。如果愿意,可在底部添加“内容填充”。
我不认为添加空视图和布局是一种很好的方法,因为它看起来有点过于“hackey”并强制限制插入顺序。
我知道在Objective C中,当为iOS编程时,可以在contentSize
中直接访问ScrollView
,并且我正在寻找(或创建)类似的东西。意思是我认为最好直接影响内容区域大小的计算,但我不知道从哪里开始。
非常感谢任何帮助。
答案 0 :(得分:1)
显然源代码是我去过的第一个地方,但所有这些组件都是成千上万的实现。另外我了解到该路线有太多潜在的失败点,所以我决定在每个容器的末尾添加一个我控制的视图。
对于ListView
我使用合成样式创建了自定义ListAdapter
,覆盖了我需要将自定义视图添加为列表中设置的任何适配器中的最后一个视图所需的方法。 p>
对于ScrollView
我在ScrollView
内创建了一个隐藏的布局层次结构,覆盖了视图插入方法,将所有视图插入到我的受控布局中,在其下面是我的填充视图。
对于WebView
,因为我不希望在这个项目中进行任何水平滚动,所以我坚持用我的自定义ScrollView
包装它。
如果有人想要更多详情,您可以发表评论。