Edit: je viens de voir que vous avez trouvé la réponse ... sheeeiiitttt
Je viens de l'apprendre littéralement! Pour ce faire, vous n'avez même pas besoin de l'afficher dans UIWebView. (Mais comme vous l'utilisez, vous pouvez simplement obtenir l'URL de la page actuelle)
Quoi qu'il en soit, voici le code et quelques (faibles) explications:
//create a URL which for the site you want to get the info from.. just replace google with whatever you want
NSURL *currentURL = [NSURL URLWithString:@"http://www.google.com"];
//for any exceptions/errors
NSError *error;
//converts the url html to a string
NSString *htmlCode = [NSString stringWithContentsOfURL:currentURL encoding:NSASCIIStringEncoding error:&error];
Nous avons donc le code HTML, maintenant comment obtenir le titre? Eh bien, dans chaque document basé sur html, le titre est signalé par This Is the Title. Donc, la chose la plus simple à faire est probablement de rechercher cette chaîne htmlCode pour, et pour, et de la sous-traiter afin que nous obtenions les choses entre les deux.
//so let's create two strings that are our starting and ending signs
NSString *startPoint = @"<title>";
NSString *endPoint = @"</title>";
//now in substringing in obj-c they're mostly based off of ranges, so we need to make some ranges
NSRange startRange = [htmlCode rangeOfString:startPoint];
NSRange endRange = [htmlCode rangeOfString:endPoint];
//so what this is doing is it is finding the location in the html code and turning it
//into two ints: the location and the length of the string
//once we have this, we can do the substringing!
//so just for easiness, let's make another string to have the title in
NSString *docTitle = [htmlString substringWithRange:NSMakeRange(startRange.location + startRange.length, endRange.location)];
NSLog(@"%@", docTitle);
//just to print it out and see it's right
Et c'est vraiment ça! Donc, fondamentalement, pour expliquer toutes les manigances qui se produisent dans le docTitle, si nous avons créé une plage simplement en disant NSMakeRange (startRange.location, endRange.location), nous obtiendrions le titre ET le texte de startString (ce qui est) parce que l'emplacement est par le premier caractère de la chaîne. Donc, pour compenser cela, nous avons simplement ajouté la longueur de la chaîne
Maintenant, gardez à l'esprit que ce code n'est pas testé ... s'il y a des problèmes, cela peut être une faute d'orthographe, ou que je n'ai pas / ai ajouté un pointeur alors que je n'étais pas censé le faire.
Si le titre est un peu bizarre et pas tout à fait correct, essayez de jouer avec le NSMakeRange - je veux dire comme ajouter / soustraire différentes longueurs / emplacements des chaînes - tout ce qui semble logique.
Si vous avez des questions ou si vous rencontrez des problèmes, n'hésitez pas à les poser. C'est ma première réponse sur ce site, donc désolé si c'est un peu désorganisé