Titanium 调用createLabel时设置类

Titanium 调用createLabel时设置类,titanium,titanium-alloy,Titanium,Titanium Alloy,我正在使用钛工作室和钛SDK。在这种情况下,我是为Android开发的,但我也在OSX上安装了 使用合金时,我可以指定 <Label class="header" id="someId">Week 50</Label> 但是,当我使用SDK版本时: var l = Ti.UI.createLabel({class:"header", text:"sometext"}); TSS文件中的颜色没有拾取 我做错了什么。“类”不是有效的属性吗?(我似乎在文档中找不到它)。合金

我正在使用钛工作室和钛SDK。在这种情况下,我是为Android开发的,但我也在OSX上安装了

使用合金时,我可以指定

<Label class="header" id="someId">Week 50</Label>
但是,当我使用SDK版本时:

var l = Ti.UI.createLabel({class:"header", text:"sometext"});
TSS文件中的颜色没有拾取


我做错了什么。“类”不是有效的属性吗?(我似乎在文档中找不到它)。

合金样式将自动应用于通过xml创建的视图。如果您想在控制器内创建对象时保持这种效果,您必须使用方法而不是钛API。在您的情况下,您的代码如下所示:

var l = $.UI.create('Label', {
   title: "sometext",
   classes: ["header"],
});

更多阅读。它没有很好的文档记录,当我阅读它时,它的某些部分对我来说是不清楚的,但这是实验代码和学习合金行为的良好起点。

在我搜索类似内容时遇到了您的问题。不幸的是,选择的答案并不是我想要的解决方案,因为我正在编写一个commonJS,需要同样的解决方案。如果您正在编写commonJS(但仍在Alloy项目下),则可以使用以下解决方案:

var l = Alloy.UI.create("index", "Label", {
   title: "sometext",
   classes: ["header"],
});

其中,
“index”
是Alloy从您的
app.tss
文件生成的内容。

感谢指针,我错过了$.UI.create()调用。但是,我只能让它使用以下语法:var label=$.UI.create('label',{text:'sometext',classes:[“header”]});为什么语法不同?对不起,我忘记了不同的属性。我改变了答案,使之完全正确。做得好。希望Titanium能做点什么来简化这一点。我无法使用该代码创建
小部件
。。当然,没有相关文件。
var l = Alloy.UI.create("index", "Label", {
   title: "sometext",
   classes: ["header"],
});