1

我正在解析远程 XML 文件并将值存储在NSArray. 从我NSScanner用来获取特定图像并将其分配给UIImageView.

扫描并获取图像的 URL 链接后,我将其分配给 aUIImageView但它没有显示图像。我只得到一个空白的白色窗口。代码如下所示:

我的视图控制器

NSURL *url = [NSURL URLWithString:@"http://myXML.com/Category.xml"];
AGSParser *parser = [[AGSParser alloc] init];
if ([parser loadXMLByURL:url]){
   self.xmlProductsResults = parser.products;
   NSArray *myArray = [_xmlProductsResults objectAtIndex:0];
   NSString *string = [myArray description];
   NSString *url = nil;
   NSScanner *parser = [NSScanner scannerWithString:string];
  [parser scanUpToString:@"imageUrlString" intoString:nil];
  if (![parser isAtEnd]) {
     [parser scanUpToString:@"=" intoString:nil];
     NSCharacterSet *charset = [NSCharacterSet characterSetWithCharactersInString:@"\"'"];
    [parser scanUpToCharactersFromSet:charset intoString:nil];
    [parser scanCharactersFromSet:charset intoString:nil];
    [parser scanUpToCharactersFromSet:charset intoString:&url];
    NSLog(@"URL: %@",url);
 }
}

当我签入时,NSLog我得到的字符串值为http://myimage.com/image1.png. 在我的视图控制器中,我将此图像 url 分配给 UIImageView,如下所示:

UIImageView *myImageView = [[UIImageView alloc] init];
myImageView.image = [UIImage imageNamed:url];

此处未分配图像。谁能建议我如何解决这个问题?

4

2 回答 2

6

[UIImage imageNamed:url]做成[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:url]]]. _

对于您的其他问题,请查看 V-Xtreme 的答案

于 2013-02-22T05:33:23.457 回答
3
Application windows are expected to have a root view controller at the end of application launch

当您的应用委托类中没有给出正在启动窗口的根视图控制器时,就会发生这种情况。

self.window.rootViewController = self.viewController;
[self.window makeKeyAndVisible];
于 2013-02-22T05:43:30.437 回答