2010-12-12 11 views
0

Ich beginne gerade mit Objective-C auf iOS. Ich habe einen Int, der eine Nummer enthält. Ich möchte eine NSString deklarieren, so dass ich Formatbezeichner verwenden kann, wenn ich ihr einen Wert zuweise.Deklarieren Sie einen NSString mit Formatbezeichnern und verwenden Sie ihn als URL zum Öffnen in UIWebview

Ich dachte, es so etwas wie das sein könnte:

NSString [NSString string] myString;

myString = [@ "http://myurl.com/%d", meinInt];

Ich nehme dies nicht der Fall ist, so die Frage ist: Wie erkläre ich ein NSString die Formatbezeich verarbeiten kann und es dann einen Wert Bezeich mit Format zuweisen? Der Zweck dieser NSString ist, eine URL genau wie die zweite Zeile oben zu halten.

Frage zwei ist, wie verwende ich dann diese Zeichenfolge als URL in einer UIWebView öffnen? Ich nehme ich so etwas wie folgt verwenden:

[webView loadrequest:

Leider dies soweit meines Wissens erstreckt. Gibt es eine Möglichkeit, dass ich meinem UIWebView (webView oben) sagen kann, das NSString mit der URL zu verwenden, die ich vorher erwähnte?

Ich habe vor, die NSString als eine globale Variable zu haben, da es seinen Wert innerhalb einer C-Funktion zugewiesen wird. Und "WebView" wird es in einer (was ich denke) Methode verwenden. Der gesamte Code befindet sich in der gleichen Datei, der Datei Delegate.m. Es wird alles beim Start der Anwendung ausgeführt.

Jede Hilfe wäre sehr geschätzt, werden

Vielen Dank.

Antwort

0

Für Ihren ersten Teil:

NSString *myString = [NSString stringWithFormat:@"http://myurl.com/%d", myInt]; 

Dann wird basierend auf this tutorial:

//Create a URL object. 
NSURL *url = [NSURL URLWithString:myString]; 

//URL Request Object 
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url]; 

//Load the request in the UIWebView. 
[webView loadRequest:requestObj]; 
2

Ihre Zeichenfolge sollte wie folgt aussehen:

NSString *myString = [NSString stringWithFormat:@"http://myurl.com/%d", myInt]; 

Was Sie verpasst haben: das Hinzufügen der * um einen Zeiger anzuzeigen und zu denken, dass Sie zuerst angeben müssen, dass die Zeichenfolge ein Format haben würde und geben Sie später das Format an. Alles geschieht auf einmal und erzeugt die Zeichenfolge mit dem angegebenen Format.

Edited hinzufügen NSURL

eine URL erstellen Sie ein Objekt der Klasse NSURL erstellen, wie folgt aus:

NSURL *myURL = [[NSURL alloc] initWithString:myString]; 

Und dann erstellen Sie die URL-Anfrage:

NSURLRequest *request = [NSURLRequest requestWithURL:myURL]; 

Und schließlich, sagen Sie Ihrem WebView, um die Anfrage zu laden:

[webView loadRequest:request]; 
+0

Hallo Matthew, vielen Dank, das hat super funktioniert, aber ich bekomme einen Fehler. Es scheint, dass der NSString nicht außerhalb der C-Funktion zugänglich ist, wo er die URL zugewiesen hat. Die letzten 3 Codezeilen, die Sie zur Verfügung gestellt haben, werden ausgeführt während: "didFinishLoadingWithOptions". Ich bekomme eine Fehlermeldung, dass der NSString nicht deklariert ist. Gibt es eine Problemumgehung? Vielen Dank – baxterma

+0

Sie haben Recht, dass die Zeichenfolge nur innerhalb der Methode verfügbar ist, in der sie erstellt wurde. Wo wird es jetzt erklärt? –

Verwandte Themen