2009-12-14 86 views
0

我有HTML字符串,它是由第三方庫使用xml文件創建的。 HTML字符串包含圖片和視頻的自定義網址(例如:image://)。有沒有辦法通過我可以處理這些資源加載請求,並在UIWebView中正確加載它們?iPhone SDK:從自定義URL方案加載資源

回答

1

我們需要創建NSURLProtocol的一個子類,並重新實現以下可以處理自定義URL方案的方法

+(BOOL)canInitWithRequest:(NSURLRequest*)request 
+(NSURLRequest*)canonicalRequestForRequest:(NSURLRequest*)request 
+(BOOL)requestIsCacheEquivalent:(NSURLRequest*)a toRequest:(NSURLRequest*)b 
-(void)startLoading 
-(void)stopLoading 

我們還必須註冊此自定義UR l協議類時,應用程序通過以下方式啓動

[NSURLProtocol registerClass:[CustomURLProtocol class]]; 
+0

一個實施的例子將是很好..這不是很清楚,首先需要startLoading/stopLoading做什麼 – 2011-09-15 08:41:06

1

您應該能夠將它們更改爲指向應用程序包內的文件的file:// url。

爲了讓你可以使用路徑:

NSString *path = [[NSBundle mainBundle] pathForResource:@"MyFileInResources" ofType:@".png"]; 

請注意,您將需要擺脫這種使用:

NSString *escapedPath = [path stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];