Files
farfromrefuge 7e9f27dda4 feat(android): fragment transactions to use 'add' instead of 'replace' on fwd navigation (#8791)
Changes the behavior of android fragment transactions to use `add` instead of `replace` on forward navigation.

BREAKING CHANGE:

Changes the internal behavior of Android navigation:

* while navigating forward, the page navigated from is not unloaded anymore
* events order is changed in the sense that now `unloaded` happens after `navigatedFrom` instead of before

There are multiple plus sides to this:

* no more black views on navigation when using opengl (maps, ...)
* navigation is faster, especially the navigation back! No longer need to recreate the page anymore. Navigation forward also gets faster as we no longer unload the previous page
* navigatedFrom event happens faster
* this the default behavior used by most of the android native apps
2021-08-11 17:52:15 +02:00
..
2021-04-06 11:18:36 -07:00

Use the frame in the following way:

To navigate to the starting page of the application

// put this in the bootstrap.js
var app = require("application");
var frameModule = require("ui/frame");

app.onLaunch = function(context) {
	var frame = new frameModule.Frame();
	frame.navigate("testPage");
}

// or use the mainModule property of the application module
// in this a Frame instance is internally created and used to navigate to the main page module
app.mainModule = "testPage";

To navigate to a new Page

// take the frame from an existing (and navigatedTo) Page instance
var frame = page.frame;
frame.navigate("newPage");

To navigate to a new Activity (Android)

// create a new Frame instance
var frameModule = require("ui/frame");
var frame = new frameModule.Frame();
frame.navigate("newPage");