c'è qualcosa di strano nel mio codice. Sono sicuro di dimenticare qualcosa ma non so cosa. Cerco di gestire il telefono, i collegamenti mailto e http in un UIWebView.Rilevamento dei collegamenti telefonici UIWebView su iPhone
Ecco come provo:
1/istanziare UIWebView:
webview = [[UIWebView alloc] initWithFrame:CGRectMake(0,0,320,460)];
webview.opaque = NO;
webview.backgroundColor = [UIColor clearColor];
webview.userInteractionEnabled = YES;
webview.dataDetectorTypes = UIDataDetectorTypeAll;
2/impostare il delegato appropriata:
[webview setDelegate: self];
3/implementare il metodo delegato (versione semplificata qui):
- (BOOL)webView:(UIWebView *)webView
shouldStartLoadWithRequest:(NSURLRequest *)request
navigationType:(UIWebViewNavigationType)navigationType; {
NSURL *requestURL = [[ request URL] retain];
NSLog(@">>> %@", [requestURL scheme]);
[requestURL release];
return YES;
}
Con il mio dispositivo di debug quando tocco un collegamento http, viene stampato NSLog. Quando tocco un collegamento tel ho questo tipo di messaggio di conferma:
alt text http://cahripub.com/images/bug.gif
Con l'iPhone Simulator, tel e HTTP collegamenti siano correttamente stampato da NSLog.
Strano, no?
precisione, ho provato whith ogni valori dataDetectorTypes! – lefakir
Ho provato con sms e collegamenti mailto. Sono anche correttamente stampati da NSLog. – lefakir