2010-09-29 14 views
2

Est-il possible d'enregistrer une URL avec NSUserDefaults sans setURL: forKey: uniquement disponible pour iOS 4.0 et versions ultérieures?iPhone - Enregistrer l'URL sans setURL: forKey: et NSURL

Je charge des fichiers HTML localement avec fileURLWithPath, et il commence à une page d'introduction et l'utilisateur peut cliquer sur n'importe quoi. Pour l'instant, chaque fois qu'un utilisateur recommence, il réinitialise la valeur par défaut à intro.htm. Je voudrais être en mesure d'enregistrer leur page actuelle à NSUserDefaults sur viewdiddissapear et le recharger la prochaine fois, mais ne trouve pas de solutions autres que setURL: forKey :. Quelqu'un là-bas connaît une solution?

Répondre

8

Vous pouvez activer l'URL dans une chaîne:

[[NSUserDefaults standardUserDefaults] 
setObject:[url absoluteString] forKey:@"url"]; 

Et vice versa:

NSURL *url = [NSURL URLWithString:[[NSUserDefaults standardUserDefaults] 
            objectForKey:@"url"]]; 
+0

Merci. Exactement ce que je voulais! Vous vous demandez si vous connaissez un moyen de créer une liste d'URL back-forward? J'ai un bouton qui appelle javascript history.go (-1) pour retourner l'utilisateur à un index. Maintenant que j'ai cette fonctionnalité qui s'ouvre directement sur la dernière page chargée, ce bouton ne les envoie plus à l'index car appuyer sur Retour ne fait rien. J'ai essayé de faire un double appel d'URL à l'index principal, puis à la page sauvegardée mais cela n'a pas encore chargé l'index dans l'historique "arrière". – ElChico