如何在页面或布局中动态添加视图

How to dynamically add view in page or layout

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

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

有人知道怎么做吗?

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

除了在您的应用程序中包含一个页面(正常);您将 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

我认为您的意思是向页面动态添加一些视图/控件,而不是导航到另一个页面。 如果是这样,您只需要将一些控件添加到页面的其中一个布局中(只有容器 [=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)