【发布时间】:2014-07-28 19:27:03
【问题描述】:
我正在使用 SDWebImage 将位于我的 TableViewCell 中的图像传递给我的详细视图控制器中的 UIImageView。出于某种原因,我的 DetailViewController 中的这一行向我抛出了错误:“NSDictionary 没有可见的@interface 声明了选择器 sd_setImageWithURL”。我已经在我的 TableViewController 和 DetailViewController 中添加了适当的“UIImageView+WebCache.h”,所以我不确定为什么会这样;帮忙!
TableViewController.m
FullArticleViewController *detailViewController = [[FullArticleViewController alloc]
initWithNibName:@"FullArticleViewController" bundle:nil];
detailViewController.title = [[Doctors objectAtIndex:indexPath.row] objectForKey:@"node_title"];
detailViewController.articleDetail = [Doctors objectAtIndex:indexPath.row];
[detailViewController.featureImage sd_setImageWithURL:[NSURL URLWithString:cellImageLink]];
NSLog(@"cellImageLink is %@", cellImageLink);
[self.navigationController pushViewController:detailViewController animated:YES];
DetailViewController.h
{
IBOutlet UIScrollView *scroller;
IBOutlet UILabel *firstnameLabel;
IBOutlet UILabel *descriptionLabel;
IBOutlet UILabel *bodyLabel;
IBOutlet UIImageView *featureImage;
}
@property (nonatomic, copy) NSDictionary *articleDetail;
@property (strong, nonatomic) UIImageView *featureImage;
@property (strong, nonatomic) NSString *cellImageLink;
DetailViewController.m
featureImage.image = [UIImageView setImageWithURL:[NSURL URLWithString:cellImageLink]];
NSLog(@"cellImageLink is %@", cellImageLink);
【问题讨论】:
-
我认为我们需要更多的上下文来提供帮助。您的
DetailViewController中的articleDetail是什么类型?这似乎是一种以id访问的情况,并且需要在使用前适当地转换。 -
嗨@mckeejm,articleDetail 是NSDictionary 类型。请参阅上面的编辑(我已将 articleDetail 更改为 UIImageView,但这也不起作用)。我已经发布了 DetailViewController.h 文件。
-
看起来你在
articleDetail上调用sd_setImageWithURL,这肯定会产生你提到的错误。但是,我在更新的 OP 中看不到该代码。 -
这是编译时错误还是运行时错误?
-
@mckeejm 编译时错误;该应用程序甚至不会运行此错误。当我在该行代码中使用 UIImageView 而不是 articleDetail 时,我得到的错误是“No known class method for selector sd_setImageWithURL”。
标签: ios objective-c uitableview segue sdwebimage