因此,我是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文档之后,我对它的工作原理的了解不如以前。
请,有人向我解释我在这里做错了吗?