如何更改NativeScript标签的文本

时间:2016-11-05 04:02:41

标签: user-interface label nativescript

我是NativeScript的新手,我需要能够更改标签的文本。我很困惑如何做到这一点并需要帮助。我怎样才能做到这一点?提前谢谢!

1 个答案:

答案 0 :(得分:7)

第一种方式:

您可以为要获取的标签设置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,并通过该上下文的属性之一设置label文本。通过这种方式,当您更改属性值时,标签将自行更新文本:

在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;