带有%20的Uri会导致ImageLoader.DefaultRequestImage抛出空引用异常

时间:2012-09-23 17:17:24

标签: xamarin.ios monotouch.dialog

我传递的URL字符串包含%20(Url编码的空格字符)来实例化一个新的Uri对象,我使用Uri作为ImageLoader.DefaultRequestImage的参数。

但是,当我调用Scale对象的UIImage方法时,会发生空引用异常。我该如何解决这个问题?

var uri = new Uri("http://example.com/path%20with%20/image.jpg");
var image = ImageLoader.DefaultRequestImage(uri, null);
var small = image.Scale(new SizeF(32,32));

1 个答案:

答案 0 :(得分:1)

你错误地使用了api。

DefaultRequestImage是一个异步方法,如果图像已存在于本地缓存中,则返回值为图像;如果缓存中不存在该图像,则返回null。

返回值为null,因为缓存中没有任何内容。您必须提供通知函数(调用中的第二个参数,在这种情况下,您选择不通过传递null提供一个参数)