2010-08-06 74 views
1

我正在尝试使用Google API在我的应用程序中放置一些图形,但它并不工作。我在互联网上测试了其他图像的代码,它工作。iPhone开发 - 来自Google API的图表

代码:

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    UIImage *myimage = [UIImage imageWithData: [NSData dataWithContentsOfURL: [NSURL URLWithString: @"http://chart.apis.google.com/chart?cht=bvo&chd=t:10,50,60,80,40&chl=Hello|World|hi&chs=250x100"]]]; 
    UIImageView *test = [[UIImageView alloc] initWithImage:myimage]; 
    UIView *myView = [[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, 100.0, 100.0)]; 
    [myView addSubview:test]; 
    [self.view addSubview:myView]; 
} 

感谢, 克劳迪奥

回答

7

您的问题之一是,你加重了这么多的语句插入一行。如果你把它分解出来,会更容易分辨出发生了什么。

问题是'|'字符在URL字符串中。如果你给图表一个简单的字母数字标题,它会加载。如果您替换“|”与“%7C”它将加载。

"http://chart.apis.google.com/chart?cht=bvo&chd=t:10,50,60,80,40&chl=Hello%7CWorld%7Chi&chs=250x100" 

是您应该使用的URL。

请参阅this answer了解如何检查要用作URL的每个字符串 - 最好检查所有有问题的字符,否则在最不经意的时候会失败。

+0

非常好!非常感谢! – Claudio 2010-08-06 05:59:04