1

我不知道如何以编程方式将视图添加到布局或页面中。

我需要在运行时添加视图而不使用静态 xml 声明,因为我需要从 http 请求的对象中获取它们...。我没有在文档中找到有用的信息。

有谁知道该怎么做?

4

3 回答 3

9

我认为您的意思是向页面动态添加一些视图/控件,而不是导航到另一个页面。如果是这样,您只需将一些控件添加到页面中的一个布局中(只有容器 [=layouts] 可以有多个子级。

so, your code (viewmodel/page controller) would look something like:
var layout = page.getViewById("Mycontainer");
// create dynamic content
var label = new Label();
label.text = "dynamic";
// connect to live view
layout.addChild(label)
于 2015-06-01T06:37:38.597 回答
1

除了在您的应用程序中包含一个页面(正常);您将 xml、css 和 js 下载到另一个目录,然后导航到它,然后执行类似的操作page.navigate('downloaded/page-name');

你也可以

var factoryFunc = function () {
    var label = new labelModule.Label();
    label.text = "Hello, world!";
    var page = new pagesModule.Page();
    page.content = label;
    return page;
};

topmost.navigate(factoryFunc);

https://docs.nativescript.org/navigation#navigate-with-factory-function

于 2015-05-31T08:52:00.603 回答
0

您应该在 {N} 论坛上查看此主题。问题是关于从远程服务器动态加载页面和模块。这个线程中给出了(可能的)解决方案。

于 2015-05-30T18:12:18.907 回答