如何将ScrollView布局与page-router-outlet和延迟加载的模块一起使用?

时间:2019-03-13 13:56:48

标签: android ios nativescript angular2-nativescript angular-nativescript

因此,我是NativeScript的新手。我已经完成了2-3个教程,但是我正在领导一个跨平台编写移动应用程序的项目,并且遇到了一个奇怪的场景,无法找到任何真正的深入信息来详细说明差异以及布局过程作品。

为简单起见,我将简化大多数代码示例。我的问题是我正在寻找一种使用RadSideDrawer的简单方法。我想将tkMainContent设为ScrollView,以便可以使用Angular路由器和page-router-outlet组件在ActionBar顶部显示所有内容。视图和BottomNavigation内部的tkMainContent。我将其标记为这样

<GridLayout rows="auto,*,auto">

<GridLayout row="0">
<!-- Custom ActionBar stuff -->
</GridLayout>

<StackLayout row="1">
  <ScrollView>
    <page-router-outlet></page-router-outlet>
  </ScrollView>
</StackLayout>

<GridLayout row="2">
<!-- Bottom Navigation Stuff -->
</GridLayout>

此解决方案可以像我在Android中预期的那样完美地工作。但是,当我在iOS模拟器中编译并运行时,ScrollView内部的内容恰好变为视图宽度的两倍,并在视图的右侧溢出,并且我无法滚动或看到溢出的内容。另外,垂直滚动不起作用。

我以前将ScrollView放在子组件内部,这在iOS中似乎可以正常工作,但在Android中根本无法滚动。这使我意识到,这是一种设计应用程序的愚蠢方式,因为这是一个纵向生产力类型的应用程序,它将始终保持顶层结构,并且页面路由器出口内的每个组件都将保持不变。在ScrollView内部。由于缺乏对NativeScript如何计算宽度/高度的了解,这对我来说可能是不好的设计,但是在阅读了Layout Process文档之后,我对它的工作原理的了解不如以前。

请,有人向我解释我在这里做错了吗?

0 个答案:

没有答案