使用javascript在Nativescript中创建复选框的最佳方法是什么?
我知道如果我使用复选框,它只适用于Android,我的开关有问题。所以我想用图像重现一个复选框。
我有这个XML
<ListView items="{{ whishList }}">
<ListView.itemTemplate>
<GridLayout class="listes" columns="auto,*,30">
<Image id="id_check" src="res://selectoff" tap="CheckList"/>
<Label id="id_wishlist" text="{{ id_wishlist }}"/>
</GridLayout>
</ListView.itemTemplate>
</ListView>
如果我点按图片,我想改变图片的图像。 使用JS我需要更改图像,但这只会改变最后一项:
exports.CheckList = function(args){var customControl = args.object;
customControl.bindingContext = whishList;
var checkID = customControl.parent.parent.getViewById("id_check");
checkID.src ="res://selecton";
}
答案 0 :(得分:0)
我的解决方案如下
var customControl = args.object;
var checkID = customControl.parent.getViewById("id_check");
checkID.src ="res://checkon";
答案 1 :(得分:0)
OP解决方案。
@Brad Martin XY problem描述的复选框插件有效,问题出现在itemtap中,如果这是与其他组件的列表视图。
例如: 如果我们想要每个元素的itemTap,并且无法使用复选框,则解决方案的焦点设置为false。
exports.CheckLoaded=function(args) {
// This is only an issue in Android
if (app.android) {
var ChBox= args.object;
ChBox.android.setFocusable(false);
}
}