我如何使用三个 webview 来显示多个 html 页面,比如在滚动视图中显示 50 个。任何示例代码请参考我。我目前的代码是这样的。它会导致内存泄漏,我当然知道这是一个愚蠢的问题。我坚持这个超过2天。请帮我。
-(void)AddWebviews
{
[m_CtrlActivity stopAnimating];
m_CtrlLblProgress.hidden=YES;
int divisor = WebViewAddCount % 3;
MagazineAppDelegate *appdelegate = (MagazineAppDelegate *)[[UIApplication sharedApplication]delegate];
IstructPageDetails *objPageDetails=[appdelegate.m_mutarrPageDetails objectAtIndex:WebViewAddCount];
if (divisor==0)
{
m_CtrlWebViewone=[[UIWebView alloc]initWithFrame:CGRectMake(768*WebViewAddCount,0,768,1024)];
// m_CtrlWebView.scrollView.delegate=self;
// m_CtrlWebView.delegate=self;
NSString *m_strMagazineFolder=[[GlobalFunctions GetCachesFolder]stringByAppendingPathComponent:MAGAZINE_FOLDER_NAME];
NSString *finalpath=[NSString stringWithFormat:@"%@/%@/%@/%@",m_strMagazineFolder,appdelegate.m_StrSelectedMagazineUrl,objPageDetails.m_strFolderName, objPageDetails.m_strPageName ];
NSURL *url = [NSURL fileURLWithPath:finalpath isDirectory:NO];
[m_CtrlWebViewone loadRequest:[NSURLRequest requestWithURL:url]];
m_CtrlWebViewone.scrollView.pagingEnabled=YES;
m_CtrlWebViewone.scrollView.bounces=NO;
m_CtrlWebViewone.scalesPageToFit=YES;
m_CtrlWebViewone.backgroundColor=[UIColor clearColor];
self.m_CtrlScrollview.pagingEnabled=YES;
[self.m_CtrlScrollview addSubview:m_CtrlWebViewone];
[m_CtrlWebViewone release];
}
else if(divisor==1)
{
m_CtrlWebViewtwo=[[UIWebView alloc]initWithFrame:CGRectMake(768*WebViewAddCount,0,768,1024)];
// m_CtrlWebView.scrollView.delegate=self;
// m_CtrlWebView.delegate=self;
NSString *m_strMagazineFolder=[[GlobalFunctions GetCachesFolder]stringByAppendingPathComponent:MAGAZINE_FOLDER_NAME];
NSString *finalpath=[NSString stringWithFormat:@"%@/%@/%@/%@",m_strMagazineFolder,appdelegate.m_StrSelectedMagazineUrl,objPageDetails.m_strFolderName, objPageDetails.m_strPageName ];
NSURL *url = [NSURL fileURLWithPath:finalpath isDirectory:NO];
[m_CtrlWebViewtwo loadRequest:[NSURLRequest requestWithURL:url]];
m_CtrlWebViewtwo.scrollView.pagingEnabled=YES;
m_CtrlWebViewtwo.scrollView.bounces=NO;
m_CtrlWebViewtwo.scalesPageToFit=YES;
m_CtrlWebViewtwo.backgroundColor=[UIColor clearColor];
self.m_CtrlScrollview.pagingEnabled=YES;
[self.m_CtrlScrollview addSubview:m_CtrlWebViewtwo];
[m_CtrlWebViewtwo release];
}
else if(divisor==2)
{
m_CtrlWebViewthree=[[UIWebView alloc]initWithFrame:CGRectMake(768*WebViewAddCount,0,768,1024)];
// m_CtrlWebView.scrollView.delegate=self;
// m_CtrlWebView.delegate=self;
NSString *m_strMagazineFolder=[[GlobalFunctions GetCachesFolder]stringByAppendingPathComponent:MAGAZINE_FOLDER_NAME];
NSString *finalpath=[NSString stringWithFormat:@"%@/%@/%@/%@",m_strMagazineFolder,appdelegate.m_StrSelectedMagazineUrl,objPageDetails.m_strFolderName, objPageDetails.m_strPageName ];
NSURL *url = [NSURL fileURLWithPath:finalpath isDirectory:NO];
[m_CtrlWebViewthree loadRequest:[NSURLRequest requestWithURL:url]];
m_CtrlWebViewthree.scrollView.pagingEnabled=YES;
m_CtrlWebViewthree.scrollView.bounces=NO;
m_CtrlWebViewthree.scalesPageToFit=YES;
m_CtrlWebViewthree.backgroundColor=[UIColor clearColor];
self.m_CtrlScrollview.pagingEnabled=YES;
[self.m_CtrlScrollview addSubview:m_CtrlWebViewthree];
[m_CtrlWebViewthree release];
}
WebViewAddCount++;
[self.m_CtrlScrollview setContentSize:CGSizeMake(WebViewAddCount*768, 1004)];
}