0

嘿,这是我在 rootviewcontroller.m 上的代码(RSS 页面)

NSDictionary* storyLink = [[stories objectAtIndex: storyIndex] objectForKey: @"link"];

// clean up the link - get rid of spaces, returns, and tabs...
storyLink = [storyLink stringByReplacingOccurrencesOfString:@" " withString:@""];
storyLink = [storyLink stringByReplacingOccurrencesOfString:@"\n" withString:@""];
storyLink = [storyLink stringByReplacingOccurrencesOfString:@"  " withString:@""];

NSLog(@"link: %@", storyLink);


browserScreen=[[BrowserViewController alloc] initWithNibName:@"BrowserViewController" bundle:nil];
browserScreen.storyLink =[[stories objectAtIndex: storyIndex] objectForKey: @"link"];

[self.view addSubview:browserScreen.view];

这会打开 WebView 页面,但不会加载我请求的 url。这是我的 BrowserViewController.ms viewDidload 页面(网络视图,我还在 .xib 文件中修补了东西)

- (void)viewDidLoad
{
    [super viewDidLoad];

   // NSString *urlAddress = storyLink;
    NSString *urlAddress = [[[NSBundle mainBundle] bundlePath] stringByAppendingPathComponent:@"storyLink"];

    //Create a URL object.

    NSURL *url = [NSURL URLWithString:urlAddress];

    //URL Requst Object

    NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];

    //Load the request in the UIWebView.

    [webView loadRequest:requestObj];


    // Do any additional setup after loading the view from its nib.
}

希望有人帮助,因为我对此感到绝望

4

1 回答 1

0

我认为这段代码反映了很多问题,因为你计算了一个 local storyLink,清理它,记录它,然后忽略它;您从原始的、未清理的源设置storyLink属性;browserScreen然后,在-viewDidLoad,你甚至不使用它,你从你的包中得到一个文件路径。

对于最后一部分:鉴于您有一个文件路径字符串,您不应该使用+URLWithString:它来创建 URL。文件路径不是有效的 URL 字符串。你需要使用+fileURLWithPath:.

此外,您将文件路径计算为直接在您的包中。那真的是文件所在的地方吗?它不在内容/资源或类似的东西中?

于 2012-04-10T02:36:05.850 回答