我在模拟器( Nougat v7.1.1 )上遇到了带有Angular的本机(V4)和Angular 的“标签导航”模板的问题,或者在设备上( Oreo 8.1 )。
当我在选项卡之间导航时,屏幕“闪烁”。该行为似乎与使用多个“ page-router-outlet”有关。
我尝试了Nativescript Forum中描述的解决方案,但没有成功。
在AppThemeBase中使用str
时,我遇到类型错误
<item name=“android:windowAnimationStyle”>@null</item>
(在仿真器或设备上)。
a little video showing the problem
如果有人有想法? :)
答案 0 :(得分:0)
我们发现此问题与NativeScript核心模块中的2个关键问题有关:
constructor(frame: Frame) {
this._controller = UINavigationControllerImpl.initWithOwner(new WeakRef(frame));
// This needs to be set early to avoid white flashes when changing page-router-outlets preferably in the constructor for iOS frame
this._controller.setNavigationBarHiddenAnimated(true, false);
}
我们还发现,iOS可以在构造控制器时在控制器上设置透明背景,例如在page.ios.ts
中设置透明背景:
const controller = UIViewControllerImpl.initWithOwner(new WeakRef(this));
this.viewController = this._ios = controller;
// controller.view.backgroundColor = whiteColor; (This is what it's doing now which obviously could cause a white flash)
controller.view.backgroundColor = new Color("#00000000").ios; // instead could ensure transparent to start
更多讨论在这里: https://github.com/NativeScript/NativeScript/issues/6454#issuecomment-433176056