UIWebView的使用总结
设置UIWebView透明
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType{ BOOL result = YES; NSURL *requestURL =[[request URL] retain]; NSString *requestString = [[request URL] absoluteString]; static BOOL bstart = NO; static BOOL bmove = NO; static double lasttime = 0; NSString *str = [requestURL scheme]; if ( ([str isEqualToString:@"http"] || [str isEqualToString:@"https"] || [str isEqualToString:@"mailto"] || [str isEqualToString:@"tel"]) && (navigationType == UIWebViewNavigationTypeLinkClicked) ) { result = ![[UIApplication sharedApplication] openURL:[requestURL autorelease]]; } else { [requestURL release]; NSArray *components = [requestString componentsSeparatedByString:@":"]; if ([components count] > 2 && [(NSString *)[components objectAtIndex:0] isEqualToString:@"wiweb"] && [(NSString *)[components objectAtIndex:1] isEqualToString:@"touch"]) { NSString *eventString=[components objectAtIndex:2]; if ([eventString isEqualToString:@"start"]) { float pointX=[[components objectAtIndex:3] floatValue]; float pointY=[[components objectAtIndex:4] floatValue]; double time=[[components objectAtIndex:5] doubleValue]; CGPoint aPoint = CGPointMake(pointX, pointY); NSLog(@"start: %@", NSStringFromCGPoint(aPoint)); NSLog(@"start time: %0f interval: %0f", time/1000, (time - lasttime)/1000); lasttime = time; bstart = YES; bmove = NO; NSLog(@"bstart: %d -- bmove: %d", bstart, bmove); } else if ([eventString isEqualToString:@"move"]) { float pointX=[[components objectAtIndex:3] floatValue]; float pointY=[[components objectAtIndex:4] floatValue]; CGPoint aPoint=CGPointMake(pointX, pointY); NSLog(@"move: %@", NSStringFromCGPoint(aPoint)); bmove = YES; NSLog(@"bstart: %d -- bmove: %d", bstart, bmove); } else if ([eventString isEqualToString:@"cancel"]) { NSLog(@"cancel"); bstart = NO; bmove = NO; NSLog(@"bstart: %d -- bmove: %d", bstart, bmove); } else if ([eventString isEqualToString:@"end"]) { double time=[[components objectAtIndex:3] doubleValue]; NSLog(@"end"); NSLog(@"bstart: %d -- bmove: %d", bstart, bmove); NSLog(@"end time: %0f interval: %0f", time/1000, (time - lasttime)/1000); if (bstart && !bmove) { if (time - lasttime > 400) { NSLog(@"LongPress!!!!!!"); } else { NSLog(@"Click!!!!!!"); } } bstart = NO; bmove = NO; } return NO; } } NSURL *url = [request URL]; NSString *curUrl= [url absoluteString]; NSLog(@"cururl: %@", curUrl); return result;}有时间再写个和微博类似的超文本显示的例子