我在钛中创建了一个tableView,并在其中添加了1行,并在行中添加了1个开关。我面临的问题是当我敲击开关行时也会被轻敲。我怎么能阻止这个?有没有办法停下来。我已经阅读了几个链接,他们在视图中说添加切换然后将该视图添加到行中,但这不起作用。以下是代码。
<Alloy>
<Window class="container">
<TableView width="100%" height="60%" top="5">
<TableViewRow height="50" onClick="dont" width="100%" backgroundColor=" yellow">
<View width= "100%" height="100%" onClick="doNothing">
<Switch value="On" top="5" right="5" onClick="doNot"></Switch>
</View>
</TableViewRow>
</TableView>
</Window>
</Alloy>
当我点击一个开关时,两个功能都被调用... 钛版:3.4.1 GA
答案 0 :(得分:0)
你应该怎么做: 在交换机上的tableView和onChange Listener上添加onClick监听器:
<Alloy>
<Window class="container">
<TableView width="100%" height="60%" top="5" onClick="dont">
<TableViewRow height="50" width="100%" backgroundColor=" yellow">
<View width= "100%" height="100%">
<Switch value="On" top="5" right="5" onChange="doSwitchChange"></Switch>
</View>
</TableViewRow>
</TableView>
</Window>
</Alloy>
并在controller.js中
function dont(e) {
if (e.source == e.row.children[0])
Ti.API.debug('the View');
else
Ti.API.debug('the Switch');
}
function doSwitchChange(e) {
Ti.API.debug(e.value);
}