2012-03-14 4 views
3

mon problème est le suivant: J'ai une application MVP MVWT avec une table dans laquelle les jeux de données sont affichés. Il y a plusieurs centaines de jeux de données et j'ai donc décidé de diviser le tableau en pages de 20 résultats chacune. Je charge chaque page du serveur via un service GWT-RPC qui obtient le numéro de page comme argument.GWT MVP Mise à jour de l'historique-jeton sans modification de l'activité

Maintenant, je veux faire ce qui suit: Je veux enregistrer la page de la table que l'utilisateur voit dans l'historique-Token (de sorte que le jeton serait quelque chose comme TablePlace: page = 5), mais je ne veux pas créer une nouvelle activité car alors l'état des autres éléments (par exemple il y a un TreeView) que l'activité gère serait perdu. Dans mon cas, tous les éléments de TreeView sont fermés, ce qui n'est pas ce que je veux.

Si je ne lance pas de nouveaux Lieux, l'utilisateur ne peut pas utiliser le bouton de retour du navigateur pour revenir à la page qu'il a visitée auparavant.

Merci pour votre aide à l'avance.

Répondre

4

Vous seriez un délivrer normalePlaceControllergoTo pour naviguer à un autre endroit, mais dans votre ActivityMapper, vous rentrerais même Activity instance exacte qu'auparavant. Dans ce cas précis, le ActivityManager n'arrête pas/ne démarre pas l'activité, mais la laisse tourner sa propre vie (sans même signaler que l'endroit a changé, si vous le souhaitez, demandez à votre ActivityMapper de dire votre Activity avant de le renvoyer).

Vous pouvez également trouver les FilteredActivityMapper et CachingActivityMapper utiles pour retourner la même activité pour des endroits légèrement différents, sans placer le fardeau dans votre propre cartographieur.

+1

Merci pour votre aide, qui l'a fait. Voici ce que j'ai fait: \t \t dans ma méthode getActivity (Place Place) de l'AppActivityMapper J'ai écrit ce qui suit: if (place instanceof AbstractPlace && ((AbstractPlace) place) .isSelfFired()) {return lastActivity; } AbstractPlace est une classe que j'ai déjà écrite et donc il était assez facile d'ajouter le booléen selfFired. Si mon activité crée une place sur elle-même, elle définit cet attribut sur true, sinon elle est fausse. – jcvj

Questions connexes