0
.h
@class HtmlParser
@interface ClassName : NSObject <UITableViewDataSource>
{
NSString *img;
HtmlParser *htmlParser;
}

: )

.M
- (NSString*)img
{
 if (img!=nil) return img; 
   if (_description!=nil)
   { 
//    NSString* description = [NSString stringWithString:_description];
htmlParser = [[HtmlParser alloc] loadHtmlByString:(NSString*) _description];
   }
return img;
}

説明の内容で HtmlParser を初期化しようとしています。「説明」は、tableViewController で開始され、非同期に読み込まれる RSS html です。

NSString* 記述の有無にかかわらず、ブレークポイントを取得します。'-[HtmlParser loadHtmlbyString:]: 認識されないセレクターがインスタンス 0x75aa9b0 に送信されました'... 方法がわかっているデバッグはこれだけです。すべての例外に対してブレークポイントが有効になります。

- .m のメソッドは、viewController の cellForRowAtIndexPath で呼び出されます。

    ClassName *object = _objects[indexPath.row];

NSString *i = object.img;
    UIImage* iG = [UIImage imageWithData:
                [NSData dataWithContentsOfURL:[NSURL URLWithString:i]]];
cell.imageView.image = iG;

面倒なので、さらに説明が必要な場合はお知らせください。

.h
@interface HtmlParser: NSObject <NSXMLParserDelegate>
{
ET Cetera
}
    - (id) loadHtmlByString:(NSString *)string;
4

2 に答える 2

1

「loadHtmlbyString method is not a method of theHtmlParser class, it is a method of yourClassName」クラス。

次の行でコンパイラの警告が表示されませんか。

htmlParser = [[HtmlParser alloc] loadHtmlbyString:(NSString*) _description];

HtmlParser クラスの .h を見て、そのクラスに定義されているメソッドを確認します。

于 2013-02-11T17:38:37.850 に答える