mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-11-05 13:26:48 +08:00
Merge pull request #997 from NativeScript/nnikolov/IosFastNavigationIssue
Fixed fast navigation issues in iOS.
This commit is contained in:
@@ -194,6 +194,12 @@ export class Frame extends view.CustomLayoutView implements definition.Frame {
|
|||||||
var navigationContext = this._navigationQueue[0];
|
var navigationContext = this._navigationQueue[0];
|
||||||
this._processNavigationContext(navigationContext);
|
this._processNavigationContext(navigationContext);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this._updateActionBar();
|
||||||
|
}
|
||||||
|
|
||||||
|
public navigationQueueIsEmpty() {
|
||||||
|
return this._navigationQueue.length === 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public _isEntryBackstackVisible(entry: definition.BackstackEntry): boolean {
|
public _isEntryBackstackVisible(entry: definition.BackstackEntry): boolean {
|
||||||
|
|||||||
@@ -133,6 +133,9 @@ export class Frame extends frameCommon.Frame {
|
|||||||
var newValue = this._getNavBarVisible(page);
|
var newValue = this._getNavBarVisible(page);
|
||||||
|
|
||||||
this._ios.showNavigationBar = newValue;
|
this._ios.showNavigationBar = newValue;
|
||||||
|
if (this._ios.controller.navigationBar) {
|
||||||
|
this._ios.controller.navigationBar.userInteractionEnabled = this.navigationQueueIsEmpty();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public _getNavBarVisible(page: pages.Page): boolean {
|
public _getNavBarVisible(page: pages.Page): boolean {
|
||||||
@@ -314,7 +317,7 @@ class UINavigationControllerImpl extends UINavigationController implements UINav
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var isBackNavigation = currentNavigationContext ? currentNavigationContext.isBackNavigation : false;
|
let isBackNavigation = currentNavigationContext ? currentNavigationContext.isBackNavigation : false;
|
||||||
|
|
||||||
if (isBack) {
|
if (isBack) {
|
||||||
try {
|
try {
|
||||||
|
|||||||
@@ -151,6 +151,7 @@ export class Page extends pageCommon.Page {
|
|||||||
if (this._enableLoadedEvents) {
|
if (this._enableLoadedEvents) {
|
||||||
super.onLoaded();
|
super.onLoaded();
|
||||||
}
|
}
|
||||||
|
this._updateActionBar(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
public notify<T extends observable.EventData>(data: T) {
|
public notify<T extends observable.EventData>(data: T) {
|
||||||
|
|||||||
Reference in New Issue
Block a user