0

masterViewController でテーブル セルを押すと、関連する Web ページが詳細ビュー コントローラーに読み込まれる SplitView コントロール プログラムを作成しようとしています。詳細View Controllerに次のメソッドがあり、呼び出されて正しい入力を受け取っていることを確認できます。

  -(void)masterAction:(id)sender  {

    NSString *http = @"http://";
    http = [http stringByAppendingString:sender];
    _urlString = http;


    NSURL *url= [NSURL URLWithString:_urlString];
    [self.web loadRequest:[NSURLRequest requestWithURL:url]];

     }

ただし、何もロードされていません。なぜこれが考えられるのでしょうか?何かをロードすることができた唯一の方法は、viewDidLoad メソッドに次のようなものを挿入することです。

NSURL *url= [NSURL URLWithString:@"http://www.google.com];
[self.web loadRequest:[NSURLRequest requestWithURL:url]];

メソッドは以下を使用して呼び出されています。

-(void)tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath
{
    NSDictionary *thread = [self.issueData objectForKey:@"responseData"];
    NSDictionary *feed = [thread objectForKey:@"feed"];


    NSArray *entries = [feed objectForKey:@"entries"];
    NSDictionary *posts = entries[indexPath.row];

    NSString *urlString = [posts objectForKey:@"link"];
    NSArray *split = [urlString componentsSeparatedByString:@"url=http://"];

    NSString   *url = [split objectAtIndex:1];

    [self.delegate masterAction:url];

}
4

2 に答える 2

0

webview のデリゲートを設定します。

そしてこれを試してください。

NSString *myUrl = @"http://www.YourWebSite.com";
NSURL *webUrl = [NSURL URLWithString:myUrl];
[webObj loadRequest:[NSURLRequest requestWithURL:webUrl]];
于 2015-02-17T05:26:05.540 に答える
0

テスト プロジェクトでこのコードを複製しましたが、www. http:// の後、ドメイン名の前。masterAction メソッドを以下のように変更してみてください。

- (void) masterAction: (id) sender
{
    if (![sender isKindOfClass:[NSString class]]) return;
    NSString *http = @"http://www.";
    NSString *urlString = [http stringByAppendingString:sender];
    NSURL *url = [NSURL URLWithString:urlString];
    [self.web loadRequest:[NSURLRequest requestWithURL:url]];
}

これが問題ではなく、メソッドに送信される文字列に www. UIWebView のデリゲートを設定して、リクエストの読み込み時にエラーがスローされるかどうかを確認してください。

于 2015-02-16T21:46:31.860 に答える