0

私は1つのアプリケーションを開発しています.その中で、静的ライブラリを使用しています.そして、以下のコードを使用してバックグラウンドでアプリを実行します

   -(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];
 }

そして、そのライブラリクラスの中で、1つのwebviewオブジェクトを作成し、そのwebviewを以下のようにメインクラスに追加します

           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];

ここで私の問題は、デリゲートを自己として設定するとアプリがクラッシュすることです。設定しなかった場合、デリゲートメソッドは起動しません。また、デリゲートメソッドはライブラリクラスでのみ実装されます。デリゲートを自己として設定して実行したいライブラリクラスのデリゲートメソッド。これを行う方法。

4

1 に答える 1

0

これを追加

    [web setDelegate:Your library class name instance];
于 2013-05-15T11:47:06.733 に答える