Mobile 如何在钛合金的包含视图中使用UI对象

Mobile 如何在钛合金的包含视图中使用UI对象,mobile,titanium,titanium-alloy,Mobile,Titanium,Titanium Alloy,我有四个类似于以下内容的文件: index.xml textfield.xml 当我尝试单击按钮读取名称值时,出现错误: message = "'undefined' is not an object (evaluating $.name.getView(\"nameTextField\").value')"; 出了什么问题?我如何解决这个问题?尝试将textfield.js更改为 $.nameTextField = Titanium.UI.createTextField({ hint

我有四个类似于以下内容的文件:

index.xml

textfield.xml

当我尝试单击按钮读取名称值时,出现错误:

message = "'undefined' is not an object (evaluating $.name.getView(\"nameTextField\").value')";

出了什么问题?我如何解决这个问题?

尝试将textfield.js更改为

$.nameTextField = Titanium.UI.createTextField({
    hintText:"Type your name",
    height:40,
    width:300,
    top:20,
    borderStyle:Titanium.UI.INPUT_BORDERSTYLE_ROUNDED
});

$.nameView.add($.nameTextField);
那么您的警报代码应该如下所示

alert("Your name is " + $.name.nameTextField.value);

您只需将文本字段添加到包含的文件中,就像

textfield.xml


您是否尝试在textfield.js中使用
nameTextField.value
?或者您可以使用
$.name.children[0]。children[0]。value
var nameTextField = Titanium.UI.createTextField({
    hintText:"Type your name",
    height:40,
    width:300,
    top:20,
    borderStyle:Titanium.UI.INPUT_BORDERSTYLE_ROUNDED
});

$.nameView.add(nameTextField);
message = "'undefined' is not an object (evaluating $.name.getView(\"nameTextField\").value')";
$.nameTextField = Titanium.UI.createTextField({
    hintText:"Type your name",
    height:40,
    width:300,
    top:20,
    borderStyle:Titanium.UI.INPUT_BORDERSTYLE_ROUNDED
});

$.nameView.add($.nameTextField);
alert("Your name is " + $.name.nameTextField.value);
<Alloy>
    <View id="nameView">
          <TextField value="" hintText="Type Here" id="textfield" />
    </View>
</Alloy>
alert($.name.textfield.value);