1

NSXMLParser を使用すると、ローカル XML ファイルからデータを取得できますが、XML ファイルで指定した画像パスは取得されません。以下のコードは詳細を示しています。

NSString *path = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"Prices.xml"];
NSData *data = [[NSData alloc] initWithContentsOfFile:path];
egsParser *theParser =[[egsParser alloc] initParser];
[xmlParser setDelegate:theParser];

このコードからデータを解析できますが、これと一緒に画像を取得してテーブル ビューで表示する方法がわかりません。テーブル ビューのコードは次のとおりです。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if(cell == nil){
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
 }


theLists = [app.listArray objectAtIndex:indexPath.row];
cell.textLabel.text = theLists.title;
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
return cell;
}

ローカル XML ファイルからテーブル ビューで画像を解析して表示するアイデアを親切に提案してください

4

2 に答える 2

1

次のコードを使用します

 cell.imageView.image=[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:@"Your Image Link"]]];

or 

 cell.imageView.image=[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSString stringWithFormat:@"Your Image Link"]]];

あなたのコードによると、以下のようになります。

 cell.imageView.image=[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:theList.imgUrl]]];

保存したパスから画像を取得したい場合

 cell.imageView.image= = [UIImage imageWithContentsOfFile:@"yourSavedpath"];
于 2012-11-22T05:13:29.787 に答える
0

XML ファイルを解析するには、デリゲート メソッドを使用する必要があります...

- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict{
}
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName{
}
- (void)parserDidStartDocument:(NSXMLParser *)parser {
}
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string{
}

これらのデリゲート メソッドを使用して、必要な要素を取得します。

于 2012-11-22T05:09:40.153 に答える