【发布时间】:2015-01-16 23:26:19
【问题描述】:
我希望重新设计我的移动网络应用程序以使用 Famo.us。这一切都非常标准,滚动视图嵌入标准表面。如果有人能帮我弄清楚如何在包含 Scrollviews 的表面之间进行转换,我将不胜感激。
到目前为止,我有一系列基本的 Scrollviews 嵌套在表面中,并让它们在单击时按顺序转换。它基于 Famo.us 示例 Github 存储库中包含的 RenderController 示例。
var mainContext = Engine.createContext();
var renderController = new RenderController();
var surfaces = [];
var counter = 0;
var temp = [];
for (var i = 0; i < 10; i++) {
var scrollview = new Scrollview();
scrollview.sequenceFrom(temp);
for (var i = 0, temp; i < 40; i++) {
temp = new Surface({
content: "Surface: " + (i + 1),
size: [undefined, 200],
properties: {
backgroundColor: "hsl(" + (i * 360 / 40) + ", 100%, 50%)",
lineHeight: "200px",
textAlign: "center"
}
});
temp.pipe(scrollview);
}
surfaces.push(scrollview);
}
renderController.show(surfaces[0]);
Engine.on("click", function() {
var next = (counter++ + 1) % surfaces.length;
this.show(surfaces[next]);
}.bind(renderController));
mainContext.add(new Modifier({origin: [.5, .5]})).add(renderController);
这会导致屏幕栏上不显示任何标题(此代码示例中不包含标题),但是如果我在每次迭代后将 temp 直接添加到表面对象,我会将滚动视图的每个元素单独显示为单独的表面,可以在所有 40 之间过渡。
【问题讨论】:
-
如果您想重新提出这个问题(还需要两票),我建议您解释一下您为实现此目的所做的尝试、您得到的结果以及它们与期望的结果。请在 How to Ask 好问题和 Jon Skeet 的博客文章 Writing the perfect question 上阅读此建议。请特别注意“黄金法则”,但我强烈建议您阅读整篇文章。
-
我修改了我的帖子以澄清问题并强调迄今为止取得的进展。希望这就足够了。
标签: javascript html mobile famo.us