SC.LabelView.design不可见

时间:2011-01-15 20:22:55

标签: sproutcore

  topLeftView: SC.ScrollView.design({
    backgroundColor: "#DADFE6",
    childViews: 'labLabel labMembersLabel'.w(),


    labLabel: SC.SourceListGroupView.design({
      layout:{top: 0, left: 0, width: 100, height: 100},
      value: "LABORATORY",
      fieldLabel: "LAB",
      backgroundColor: "white"

    }),

    labMembersLabel: SC.LabelView.design({
      layout: {top: 100, left: 0, width: 100, height: 100},
      value: "LAB MEMBERS"
    })
  }),

我们的LabMembersLabel似乎没有labLabel ......我缺少什么?

2 个答案:

答案 0 :(得分:1)

ScrollView是一个特殊的视图,因为它不使用childViews数组,而是希望有一个单独的视图'contentView',你可以在这里看到:

https://github.com/sproutcore/sproutcore/blob/master/frameworks/desktop/views/scroll.js#L42

使用此视图,它将始终监视高度/宽度,并在contentView过大时自动添加滚动条。滚动视图通常用于保存listView,这可能会很长。

SC.ScrollView.design({
  contentView: SC.ListView.design({
    contentBinding: 'App.myContentArrayController'
  })
})

你想要的东西是:

SC.ScrollView.design({
  contentView: SC.View.design({
    layout: {...},
    childViews: 'labLabel labMembersLabel'.w(),

    labLabel: SC.SourceListGroupView.design({ ... }),

    labMembersLabel: SC.LabelView.design({ ... })
  })
})

如果contentView不是ListView(或控制其自身布局的其他视图),则提供布局非常重要,否则ScrollView将无法生效。

PS。作为旁注,这不是如何使用SC.SourceListGroupView。这些仅用于在SC.SourceListView上设置为“exampleView”。

答案 1 :(得分:0)

ScrollView有一个标准子视图contentView,然后可以有更多视图,请参阅https://gist.github.com/781217获取解决方案