-1

在这里,我正在尝试从 mywebpage 获取 html,bt somethng 是错误的..这​​是我的代码..我已经在我的 controller.h 文件中声明了 html 字符串。

    [NSURLConnection sendAsynchronousRequest:urlRequest queue:queue completionHandler:^(NSURLResponse *responde,NSData *Data,NSError *error){

            html=[[NSString alloc] initWithData:Data encoding:NSUTF8StringEncoding];
            //NSLog(@"%@",html);  //WORKING

        }];

  NSLog(@"%@",html); //NOT WORKING
4

2 回答 2

3

__block NSString *html在块外使用。

编辑:

  __block NSString *html;   //please notice __block is with two underscores.

  [NSURLConnection sendAsynchronousRequest:urlRequest queue:queue completionHandler:^(NSURLResponse *responde,NSData *Data,NSError *error){

        html=[[NSString alloc] initWithData:Data encoding:NSUTF8StringEncoding];
        //NSLog(@"%@",html);  

    }];

NSLog(@"%@",html);
于 2012-12-05T11:03:16.370 回答
0

是的,它应该只能在完成块内访问,因为回调只有在从 Web 服务接收到数据后才会获取“html”数据。您无法在块外访问它。

于 2012-12-05T10:19:24.070 回答