Appcelerator钛合金|如何访问其他类的元素

时间:2015-10-08 12:52:18

标签: titanium titanium-mobile titanium-alloy

在Alloy Titanium中,我可以访问ID为$ .element_id的XML元素,但是如何获取其他类的元素呢?还是xml?

修改

我有两个文件。 1. file1.js,file1xml.xml 2. file2.js,file2xml.xml

在File1.js中,我想访问file2xml.xml的变量。我怎么能做到这一点?

3 个答案:

答案 0 :(得分:2)

可以访问任何带有id的内容:

<强> file1.xml

<Alloy>
  <View id="myView" />
</Alloy>

<强> file2.js

var ctrl1 = Alloy.createController('file1');
ctrl1.myView.backgroundColor = 'red';

答案 1 :(得分:0)

您可以在合金中使用带有Id的Require标记,您可以按如下方式访问其元素。

**File1.xml**

<Alloy>
<View>
    <Label id="labelId">Middle</Label>
</View></Alloy>


**File2.xml**

<Window>
    <Require src="File1" id="File1View" type="View"/>
    <View id="header"><Label id="headerText">Header</Label></View>
    <View id="nav">
        <Label class="navButton" onClick="openTab" controllerName="home">Home</Label>
        <Label class="navButton" onClick="openTab" controllerName="news">News</Label>
        <Label class="navButton" onClick="openTab" controllerName="info">Info</Label>
        <Label class="navButton" onClick="openTab" controllerName="more">More</Label>
    </View>
</Window> 

**File2.js**

$.File1View.labelId.text = "hi";

答案 2 :(得分:0)

如果你需要file1.xml中的file2.xml,如

<Require src="common/viewToolBar" id="viewToolBar"/>

然后你可以在file1.js中获得带有id的元素,如

$. viewToolBar.getView('viewSynch').visible = false;

link了解更多详情