Colección de citas famosas - Slogan de motivación - Cómo llamar a js en ios y obtener el valor de retorno

Cómo llamar a js en ios y obtener el valor de retorno

Es muy conveniente implementar el método proxy de UIWebView en el controlador:

#pragma mark - UIWebViewDelegate

-(BOOL)webView: (UIWebView *)webView deberíaStartLoadWithRequest: (NSURLRequest * )Tipo de navegación de solicitud: (UIWebViewNavigationType) Tipo de navegación

{

NSURL * URL = [URL de solicitud];

if([[esquema de URL]isEqualToString: @ " primer clic "]){

NSArray * params =[URL . componentes de consulta separados por cadena: @ " amp;];

NSMutableDictionary * tempDic =[NSMutableDictionary diccionario];

for(ns string * paramStr in params){

ns array * di array =[paramStr componentes separados por cadena:@ " = "]

if(di array . count gt; 1) {

ns cadena * valor de decodificación =[di array[1]stringByReplacingPercentEscapesUsingEncoding: codificación de cadena nsu TF 8];

[tempDic set object: valor de decodificación forKey: di carray[0]];

}

}

uialertview * alert view =[[uialertviewalloc]init con título:@ "Modo 1" mensaje: @ "Esta es la ventana emergente original de oc" delegado: mosaico del botón de cancelación automática: @ " Recibido " otros títulos de botones: nil]

[alert view show]

NSLog(@"tempDic :@ ", tempDic

Devolver No

}

Devolver SÍ

}

Nota:primero haga clic en 1. JS, todos los esquemas de URL interceptados se convierten a minúsculas.

La codificación debe configurarse en 2.html; de lo contrario, puede haber problemas de codificación con los parámetros chinos.

3.JS utiliza el método de abrir un iFrame en lugar de usar document.location directamente para evitar el problema de múltiples solicitudes y ser sobrescrito por reemplazo.