1

我制作了一个简单的 enyo 应用程序来进行奶头滚动。它垂直滚动,但不是水平滚动。Allso 文档说您必须设置滚动大小。示例代码使用 flex: 1 作为大小,有人可以解释这是如何工作的。

代码 enyo.kind({ name: "MyApps.MainApp", kind: enyo.VFlexBox, components: [ {kind: "PageHeader", content: "Scroll"}, {name:"curValue", content:("示例文本")}, {kind: "Button", caption: "Action", onclick: "btnClickA"},

   {kind: "Scroller", flex: 1, onScrollStart: "btnClick", components: [
   { content:("Sample Text1")},
   { content:("Sample Text2")}

]}

], btnClick: function() { this.$.curValue.setContent("开始滚动"); // 处理按钮点击 },

btnClickA: function() {
this.$.curValue.setContent("Button click");  // handle the button click

} });

4

1 回答 1

2

'flex' 值是指指定子元素占据父 FlexBox 的比例。您应该阅读FlexBoxes以获得更好的想法。在没有其他控件的情况下 flex: 1 表示该控件应该占用所有父级的空间。如果 FlexBox 中有两个控件并且都是 flex: 1 ,那么它们将平等地共享父级的空间。如果一个是 flex: 2 那么它将占用两倍 (2x1) 的空间作为 flex: 1 控件。换句话说,flex 值设置了子级占用的父级(减去任何非弹性控件)的相对比例。

我相信你缺少的是你必须在滚动条内放置比滚动条宽度更宽的东西,否则......没有什么可以滚动的!希望有帮助。

于 2011-12-29T00:28:43.190 回答