Nativescript的标签 - 根据新值不更新其宽度?

时间:2017-11-20 13:31:22

标签: android angular nativescript stacklayout

我面临着一个奇怪的宽度问题。我正在使用Nativescript的Docs中的Groceries示例应用程序。

查看底部标签:"在此处注册" :

enter image description here

  • 我们确实看到了所有内容。

现在 - 如果用户点击该标签 - 则会有新文字:

     <Label width="auto" [text]="isLoggingIn ? 'Sign up here' : 'Back to login'"  ></Label>

但现在看看会发生什么:

enter image description here

宽度不会调整为较长的文字,而是将...放在最后。

所以我做了一个实验:如果初始文本在第一个位置足够长怎么办?

所以我这样做了:

 <Label width="auto" [text]="isLoggingIn ? 'Sign up here22222' : 'Back to login'"  ></Label>

所以最初它是:

enter image description here

和万岁 -

enter image description here

我看到了所有的内容。 - 但这是一个丑陋的黑客。

问题:

如何设置标签宽度以自动显示所有内容而不进行裁剪?

其他信息:

该标签的Css及其stacklayout:

.sign-up-stack {
    background-color: #311217;
}
.sign-up-stack Label {
    color: white;
    horizontal-align: center;
    font-size: 15;
    border-radius:10;
     border-color:#FF0000;
    border-width: 1;

}

2 个答案:

答案 0 :(得分:1)

您可以尝试将textWrap="true"添加到该标签吗?

答案 1 :(得分:1)

答案是:

.sign-up-stack Label {
    ...
    width: 100%;
    text-align: center;
}

并且:

<StackLayout #signUpStack
                     class="sign-up-stack"
                     (tap)="toggleDisplay()"
                     translateY="50">
            <Label [text]="isLoggingIn ? 'Sign up here' : ' Back to login'"       ></Label>
        </StackLayout>

enter image description here