我想知道当用户退出应用程序时是否存在保存上次查看窗口的功能,因此当他们再次进入应用程序时,会转到上次查看的页面,而不是重新启动。我看过Ti.App.Properties,但还没找到我想要的东西。任何人都可以指出我正确的方向,或者甚至是可能的。
由于
答案 0 :(得分:1)
Ti.App.Properties是要走的路。
如果您只想保存用户所在的窗口,只需保存每次窗口更改时用户所在的当前窗口。
如果要保存当前状态,正如标题所示,您还需要创建一个javascript对象来保存页面上的所有数据,执行JSON.stringify(object)然后将该字符串保存在属性中同样。
答案 1 :(得分:1)
有一个代码示例可用于管理上次打开的窗口的状态:
// Windows types
var TYPE_HOME = 'HomeWindow',
TYPE_BLUE = 'BlueWindow';
// Properties' keys
var PROPERTY_LAST_OPENED_WIN = 'lastOpenedWindow';
// open the last opened window
var win = openLastWindow();
// Uncomment to open the blue window
// Then, comment and reopen the app => the blue window will be opened
//createAndOpenBlueWindow();
// Save the last window configuration
function setLastWindow(params) {
Ti.App.Properties.setString(PROPERTY_LAST_OPENED_WIN, JSON.stringify(params));
}
// Create and open the last window opened
// (the function you have to call when you re-open the app)
function openLastWindow() {
var params = JSON.parse(Ti.App.Properties.getString(PROPERTY_LAST_OPENED_WIN, '{}'));
switch (params.type) {
case TYPE_HOME: return createAndOpenHomeWindow();
case TYPE_BLUE: return createAndOpenBlueWindow();
default : return createAndOpenHomeWindow();
}
}
// Create a window with the given params AND
// save this window as last opened window
function createAndOpenWindow(params) {
var win = Ti.UI.createWindow(params);
setLastWindow(params);
win.open();
return win;
}
// Create windows of type "HomeWindow"
function createAndOpenHomeWindow() {
return createAndOpenWindow({type:TYPE_HOME, backgroundColor:'#FF0000'});
}
// Create windows of type "BlueWindow"
function createAndOpenBlueWindow() {
return createAndOpenWindow({type:TYPE_BLUE, backgroundColor:'#0000FF'});
}
由于 openLastWindow 功能,此代码会创建并打开最后一个窗口。
首次打开应用时,主页将会打开(红色)。
通过取消注释这一行:
//createAndOpenBlueWIndow();
下次运行应用时,您将打开 BlueWindow 。
然后,重新评论此行。将打开蓝色窗口(因为它是最后一次打开)。
希望这有帮助!