如何更改 NativeScript 标签的文本

How to change the text of a NativeScript label

我是 NativeScript 的新手,我需要能够更改标签的文本。我对如何执行此操作感到困惑,需要帮助。我怎样才能做到这一点?提前致谢!

第一种方式:

你可以为你想要获取的标签设置一个id,并在控制器文件(即.js)中使用getViewById引用它:

在page.xml中:

<Page xmlns="http://schemas.nativescript.org/tns.xsd" loaded="onLoaded">
    <Label id="myLabel" text="" />
</Page>

在page.js中:

function onLoaded(args) {
    var page = args.object;
    var myLabel = page.getViewById("myLabel");
    myLabel.text = "Hello World";
}
exports.onLoaded = onLoaded

第二种方式:

您将一个上下文(一个 Observable 对象)绑定到 page.xml 并通过该上下文的属性之一设置标签的文本。这样当你改变属性的值时,标签会自动更新文本:

在page.xml中:

<Page xmlns="http://schemas.nativescript.org/tns.xsd" loaded="onLoaded">
    <Label text="{{ myText }}" />
</Page>

在page.js中:

var Observable = require("data/observable").Observable;
function onLoaded(args) {
    var page = args.object;
    var context = new Observable({
        myText: "Hello World"
    })
    page.bindingContext = context;
    //Change label's text
    context.set("myText", "Goodbye World");
}
exports.onLoaded = onLoaded;