Nativescript 设置开关的宽度

Nativescript 设置开关的宽度,nativescript,angular2-nativescript,nativescript-angular,Nativescript,Angular2 Nativescript,Nativescript Angular,我正在将Nativescript与Angular一起使用,我想设置开关元素的宽度 为此,我补充说: style="width: 20%; min-width: 20%;" 添加到模板中的元素 但是当我测试它时,元素的宽度不会改变 为什么它不工作?在Android和iOS上的NativeScript的开关后面。没有更改开关小部件宽度的选项,但您可以访问本机元素并修改其本机宽度(如果可能)。据我所知,修改UISwitch的宽度就像将下面的代码封送到JavaScript一样简单 aSwitch.tr

我正在将Nativescript与Angular一起使用,我想设置
开关
元素的宽度

为此,我补充说:

style="width: 20%; min-width: 20%;"
添加到模板中的元素

但是当我测试它时,元素的宽度不会改变


为什么它不工作?

在Android和iOS上的NativeScript的
开关后面。没有更改
开关
小部件宽度的选项,但您可以访问本机元素并修改其本机宽度(如果可能)。据我所知,修改UISwitch的宽度就像将下面的代码封送到JavaScript一样简单

aSwitch.transform = CGAffineTransformMakeScale(2.0, 2.0);
在NativeScript中,您可以通过属性访问本机视图(iOS或Android)

例如(TypeScript):

让mySwitch=page.getViewById(“mySwitch”);
国际单项体育联合会(isIOS){
让ioswitch=mySwitch.nativeView;
ioswitch.transform=CGAffineTransformMakeScale(2,2);
}

遵循同样的原则,您可以采用本机Android解决方案来调整Android解决方案。

谢谢您的帮助。我正试图为android做这件事,但遇到了麻烦。在我的组件中,我使用它来获取我的开关
@ViewChildren(“开关”)开关:QueryList。其中有7个开关,所以我使用
开关。forEach
在它们之间循环。在循环中,我试图同时获得
switch.android
switch.nativeView
,但两者都未定义。我在
ngAfterViewInit
生命周期钩子中这样做。为什么我不能获得本机视图?
let mySwitch= <Switch>page.getViewById("mySwith");
if (isIOS) {
    let iosSwitch = mySwitch.nativeView;
    iosSwitch.transform = CGAffineTransformMakeScale(2, 2);
}