use of cli.MonoTouch.Foundation.NSUrlRequest in project playn by threerings.
the class IOSAssets method getRemoteImage.
@Override
public Image getRemoteImage(String url, float width, float height) {
final IOSAsyncImage image = new IOSAsyncImage(platform.graphics().ctx, width, height);
new NSUrlConnection(new NSUrlRequest(new NSUrl(url)), new NSUrlConnectionDelegate() {
private NSMutableData data = new NSMutableData();
@Override
public void ReceivedData(NSUrlConnection conn, NSData data) {
this.data.AppendData(data);
}
@Override
public void FailedWithError(NSUrlConnection conn, NSError error) {
onFailure(new Exception(error.get_LocalizedDescription()));
}
@Override
public void FinishedLoading(NSUrlConnection conn) {
try {
setImageLater(image, UIImage.LoadFromData(this.data), Scale.ONE);
} catch (Throwable cause) {
onFailure(cause);
}
}
protected void onFailure(final Throwable cause) {
setErrorLater(image, cause);
}
}, true);
return image;
}
Aggregations