Edycja: właśnie widziałem, jak znalazłeś odpowiedź ... sheeeiiitttt
Dosłownie właśnie się tego nauczyłem! Aby to zrobić, nie musisz nawet wyświetlać go w UIWebView. (Ale ponieważ go używasz, możesz po prostu uzyskać adres URL bieżącej strony)
Tak czy inaczej, oto kod i jakieś (słabe) wyjaśnienie:
//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];
Mamy więc kod HTML, a teraz jak uzyskać tytuł? Cóż, w każdym dokumencie opartym na html tytuł jest sygnalizowany przez To jest tytuł, więc prawdopodobnie najłatwiejszą rzeczą do zrobienia jest wyszukanie tego ciągu htmlCode dla i dla oraz podciągnięcie go, aby uzyskać zawartość pomiędzy.
//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
I to naprawdę wszystko! Zasadniczo, aby wyjaśnić wszystkie shenanigans zachodzące w docTitle, gdybyśmy utworzyli zakres po prostu mówiąc NSMakeRange (startRange.location, endRange.location), otrzymalibyśmy tytuł ORAZ tekst startString (czyli), ponieważ lokalizacja jest pierwszy znak ciągu. Aby to zrównoważyć, dodaliśmy po prostu długość łańcucha
Teraz pamiętaj, że ten kod nie jest testowany ... jeśli są jakieś problemy, może to być błąd ortograficzny lub że nie dodałem / nie dodałem wskaźnika, gdy nie powinienem.
Jeśli tytuł jest trochę dziwny i nie do końca poprawny, spróbuj pomieszać z NSMakeRange - mam na myśli dodawanie / odejmowanie różnych długości / lokalizacji ciągów - wszystko, co wydaje się logiczne.
Jeśli masz jakieś pytania lub są jakieś problemy, nie wahaj się zapytać. To moja pierwsza odpowiedź na tej stronie, więc przepraszam, jeśli jest trochę zdezorganizowana