2010-10-04 8 views

Répondre

1

situé juste un drapeau avec le chaque événement de mise au point de la fenêtre comme

Ti.App.Properties.setString('currentWindow',Ti.UI.currentWindow.title); 

de sorte que vous Vous n'avez qu'à demander ce drapeau ..

+0

Pas exactement ce que je cherche. Je souhaite accéder à l'objet fenêtre actuel. Il est possible que j'ai plusieurs fenêtres ouvertes (peut-être les unes sur les autres). Je veux attacher à l'événement 'resume' de Ti.App dans la fenêtre racine et quand cet événement est déclenché, je veux vérifier quelle fenêtre est actuellement visible. – Shiki

7

Vous pouvez essayer Ti.UI.currentWindow - mais j'ai déjà eu des résultats mitigés dans le passé.

L'option la plus basique est de créer un var global dans votre app.js pour stocker la fenêtre, donc en résumé, vérifiez cela. Vous aurez probablement envie de faire un wrapper pour les fenêtres ainsi sur open() vous définissez votre global avec la fenêtre.

-1

Vous pouvez utiliser

var = currentWindow Ti.UI.getCurrentWindow();

1

écrire ce code dans tous les cas de mise au point de la fenêtre

Ti.App.Properties.setString('currentWindow',Ti.UI.currentWindow.title); 

Et Ti.UI.currentWindow.title devrait être essentiellement le nom du fichier dans lequel cette fenêtre est en cours de création.

Maintenant que vous avez à faire sur l'événement de reprise

var newwin_name= Ti.App.Properties.getString('currentWindow'); 
var newwin = Ti.UI.createWindow({url:newwin_name+'.js'}); 
newwin.open(); 

Hope cela vous aidera.

-1

La fenêtre focalisée est la dernière ouverte!

0

essayer ce code

d'abord vous définirez l'événement mondial. et le manipuler pour recevoir le titreFenêtre

Ti.App.addEventListener('resume', function(e) { 
    alert(e.windowTitle) 
}); 

et à l'endroit que vous voulez tirer de cet événement en font

Ti.App.fireEvent('resume',{ 
windowTitle : Ti.UI.currentWindow.title 
}); 

de sorte que vous pouvez envoyer des données personnalisées à l'événement mondial

0

La propriété ' Ti.UI.currentWindow 'n'est disponible que si vous avez utilisé la méthode Ti.UI.createWindow.url pour charger le javascript sur le contexte. Cette méthode a toutefois été RETIRÉ depuis la version 3.6.0 et la mise en place d'alliage (http://docs.appcelerator.com/platform/latest/#!/api/Titanium.UI.Window-property-url) ->Ensuite Ti.UI.getCurrentWindow renvoie la valeur null

La seule façon que je pouvais garder un pointeur sur la fenêtre en cours était de l'assigner à la création d'une variable globale sur la collection Alloy.Globals, c'est une méthode délicate si vous utilisez plusieurs fenêtres et de nombreuses façons de naviguer dans ces fenêtres, gardez cela à l'esprit.

Questions connexes