2013-05-15 48 views
0

我開發我用我的靜態library.And一個application.In我用下面的代碼的WebView委託方法是不是在後臺進程解僱

-(IBAction)sendKeyValuePair:(id)sender 
    { 
    [NSThread detachNewThreadSelector:@selector(startTheBackgroundJob) toTarget:self withObject:nil]; 
} 
-(void)startTheBackgroundJob 
{ 
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; 

//create the object for library class and do something and release that object. 

[pool release]; 
} 

和INT的是庫班在後臺運行應用程序我創建一個web視圖對象和web視圖添加到我的主類像下面

  web=[[UIWebView alloc]init]; 
      //web.delegate=self; 
      web.frame=CGRectMake(1, 1, 100,100); 
      [web loadHTMLString:html_str baseURL:nil]; 
      [main_View.view addSubview:web]; 
      [html_str release]; 
      [web release]; 

這裏我的問題是,如果我設定的委託作爲然後自我程序是crashing.And如果我沒有設置然後委託方法不是射擊。而委託方法只在庫類中實現。我想設置作爲自我委託並在庫類中運行委託方法。如何做到這一點。

+0

隨時更新'UI'。或使用'Grand Central Dispatch'它在後臺線程中執行任務 – Buntylm

+0

如何管理後臺任務,因爲當您的應用程序進入後臺超過5秒時,所有操作都會一直卡住,直到您的應用程序支持多任務 – iEinstein

+0

5秒之前只有應用程序崩潰。 – user811598

回答

0

在主線程中添加該

[web setDelegate:Your library class name instance]; 
+0

請注意這個「這裏我的問題是,如果我把代理設置爲自我,那麼應用程序崩潰」 – iEinstein

+0

像這樣也應用程序崩潰。如果我將委託設置爲我的主類並運行。那麼主類的委託方法是但我需要實現庫類委託方法。 – user811598