Özel HTML'yi UIWebView
'a goBack
yöntemini kesmeden yükleme konusunda sorun yaşıyorum. Ben benim UIWebView
URL isteklerine müdahale ediyorumBir UIWebView'da NSURLRequest'leri geri düğmesini kesmeden engelleyebilir misiniz?
Ne İşleri
yüzden özel HTML yükleyebilirsiniz. Tüm HTML üzerinde kontrolüm var, bu yüzden özel uygulama isteklerim webView:shouldStartLoadWithRequest:navigationType:
içinde ayrıştırabileceğim özel bir şema kullanıyor (örn. myapp://arg1/?arg2=val
). Hangi HTML'yi yüklemek istediğime karar veriyorum ve loadHTMLString:baseURL
numaralı telefonu arayarak orijinal isteği iptal etmek için NO
'u iade ediyorum. Büyük
yukarıdaki eserlerini Çalışmıyor Ne
. Sorun, UIWebView's
goBack
yöntemini kullanmak ve loadRequest:
tarih yığını ekleyen tek UIWebView
yöntemini kullanmak istediğim olmasıdır.
Birkaç fikrim var, ancak hangisinin uygun olduğundan ve nasıl gidileceğinden emin değilim. Asıl önemli olan, YES
'u webView:shouldStartLoadWithRequest:navigationType
numaralı telefondan döndürmem gerekiyor ve UIWebView
'un loadRequest
yöntemini kullanmam gerekiyor.
Fikir 1: NSURLRequest/Response değiştirin: Ben NSURLRequest alt sınıf Can böylece aslında bir HTTP isteği yapmaz (UIWebView istekte bulunduğunda) ve içinde benim HTML ile bir NSURLResponse döndürür? Ya da NSURLResponse'ye bir kategori yöntemini/alt sınıfı/kategori yöntemini ekleyebilir miyim? Bunun gerçek bir istek olduğu fikrini beğendim, ancak özel API'lerden ve App Store'dan reddedilmekten endişe ediyorum.
Fikir 2: Kulp özel bir URL protokolünü Kayıt özel bir URL Protokolü yani benim app kendisine yanıt verir ve bunu meşru NSURLResponse dönmek olabilir
Fikir 3 (benim özel HTML ile dolu.) : Önbelleği al Bu önbellek ilkesi NSURLRequestReturnCacheDataDontLoad
ile isteği oluşturun ve sonra bir şekilde HTML'm webView ve önbellek arasında olsun? Ya da belki yanlış yolda olduğumu mu duyuyorum?
Eğer iyi bir çözüm buluyor mu? Öyleyse, neydi? –
Yeni cevabımı görün. – zekel