我一直在玩 famo.us 并且目前正坚持让动态内容在滚动视图/表面内滚动
我目前有一个带有一个表面的滚动视图,在渲染内容时,我检查内容的大小并为表面设置相同的高度。我在调整大小时也这样做。
我想知道famo.us 是否有更好的解决方案来处理滚动视图中具有动态内容的表面。
代码基本上是样板,所以这里没有例子。这更像是一个“可能”的问题。
我一直在玩 famo.us 并且目前正坚持让动态内容在滚动视图/表面内滚动
我目前有一个带有一个表面的滚动视图,在渲染内容时,我检查内容的大小并为表面设置相同的高度。我在调整大小时也这样做。
我想知道famo.us 是否有更好的解决方案来处理滚动视图中具有动态内容的表面。
代码基本上是样板,所以这里没有例子。这更像是一个“可能”的问题。
目前没有更简单的方法可以做到这一点。当您说动态内容时,我假设您正在谈论一个真实大小的对象。我看到您提到检查渲染的高度,这也是在 Famo.us 使其更易于访问之前的解决方案。
我通过创建一个采用与 Surface 相同参数的自定义视图对象,在顺序布局中实现了动态内容。然后视图创建一个可见的frontView 和一个不可见的backView。例如,如果 size 参数以 [500,true] 输入,则 backView 将采用真实尺寸,而 frontView 将计算实际尺寸(以像素为单位)。然后在调整大小时,我们可以使用 backView 作为一种标尺来进行动态调整大小,而对实际高度(以像素为单位)的更新应用于 frontView。
http://higherorderhuman.com/examples/dynamicContent.html
这种事情看起来确实比它应该做的更难,但那是因为这种行为是传统盒子模型的优势。通过抛弃盒子模型,我们在许多其他领域受益,但这不是其中之一!