如何在页面或布局中动态添加视图
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)
我不知道如何以编程方式将视图添加到布局或页面中。
我需要在运行时添加视图而不使用静态 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)