我在UIWebview中加载了一个HTML文件。我试图在UIWebview didfinish Loading中调整图片大小。在这个webview中,根据设备尺寸,HTML内容分成多个页面(下面的代码显示)。为了分页,我使用了滑动手势。它正常工作直到这一步。在这个HTML文件中,我有一些大小不同的图片。有些图片超过了设备宽度。我需要固定图片的宽度,使其适应屏幕。我不想使用可滚动的webview,因为我使用了滑动手势进行分页。所以如何根据设备宽度重新调整那些图片的大小。
我使用以下代码:
我使用以下代码:
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
NSString *varMySheet = @"var mySheet = document.styleSheets[0];";
NSString *addCSSRule = @"function addCSSRule(selector, newRule) {"
"if (mySheet.addRule) {"
"mySheet.addRule(selector, newRule);" // For Internet Explorer
"} else {"
"ruleIndex = mySheet.cssRules.length;"
"mySheet.insertRule(selector + '{' + newRule + ';}', ruleIndex);" // For Firefox, Chrome, etc.
"}"
"}";
NSString *insertRule1 = [NSString stringWithFormat:@"addCSSRule('html', 'padding: 0px; height: %fpx; -webkit-column-gap: 0px; -webkit-column-width: %fpx;')", webview4epub.frame.size.height, webview4epub.frame.size.width];
NSString *insertRule2 = [NSString stringWithFormat:@"addCSSRule('p', 'text-align: justify;')"];
[webview4epub stringByEvaluatingJavaScriptFromString:varMySheet];
[webview4epub stringByEvaluatingJavaScriptFromString:addCSSRule];
[webview4epub stringByEvaluatingJavaScriptFromString:insertRule1];
[webview4epub stringByEvaluatingJavaScriptFromString:insertRule2];
NSString* foundHits = [webview4epub stringByEvaluatingJavaScriptFromString:@"results"];
NSMutableArray* objects = [[NSMutableArray alloc] init];
NSArray* stringObjects = [foundHits componentsSeparatedByString:@";"];
for(int i=0; i<[stringObjects count]; i++){
NSArray* strObj = [[stringObjects objectAtIndex:i] componentsSeparatedByString:@","];
if([strObj count]==3){
[objects addObject:strObj];
}
}
int totalWidth = [[webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.scrollWidth"] intValue];
}