对于' UIImageView'没有可见的@interface;声明选择器' setImageWithURL

时间:2014-12-18 02:28:50

标签: ios objective-c xcode xcode6 afnetworking

嗨我有新的Xcode和AFNetworking的问题。 在xcode5上,我没有遇到这些问题,但我开始做一些更改和更新。 问题是:

  

没有可见的@interface用于' UIImageView'声明选择器   ' setImageWithURL

代码部分:

  NSString *showThumb = [[[[SettingDataClass instance] getSetting] objectForKey:@"appearance_option"] objectForKey:@"category_browse_show_thumb"];
if([showThumb isEqualToString:@"show"])
{
UIImageView *img = [[UIImageView alloc] init];
img = cell.imageView;
[cell.imageView setImageWithURL:[NSURL URLWithString:[[ToolClass instance] decodeHTMLCharacterEntities:[[aryDic objectAtIndex:indexPath.row] objectForKey:@"thumb"]]]
        placeholderImage:[UIImage imageNamed:NSLocalizedString(@"image_loading_placeholder", nil)]
               completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType) {

                   img.image = [[ToolClass instance] imageByScalingAndCroppingForSize:CGSizeMake(57, 57) source:image];

               }];

哪里可能是一个问题以及为什么这段代码不能与Xcode6一起使用? 我将非常感谢你的帮助

3 个答案:

答案 0 :(得分:7)

尝试在使用该方法的文件中包含"UIImageView+AFNetworking.h"

答案 1 :(得分:0)

UIImageView不起作用。您需要添加AFNetworking的{​​{1}}类别才能获得UIImageView方法。

答案 2 :(得分:0)

这是apples documentation about UIImageView。正如您所看到的,没有类似setImageWithURL的方法。

AFNetworking has subclass of UIImageView。它有一个名为setImageWithURL的方法。如果要使用此方法,则需要导入该类。希望这有助于.. :))

你应该这样写:

img = cell.imageView;
[cell.imageView setImageWithURL:[NSURL URLWithString:[[ToolClass instance] decodeHTMLCharacterEntities:[[aryDic objectAtIndex:indexPath.row] objectForKey:@"thumb"]]]
        placeholderImage:[UIImage imageNamed:NSLocalizedString(@"image_loading_placeholder", nil)]
               completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType) {

                   img.image = [[ToolClass instance] imageByScalingAndCroppingForSize:CGSizeMake(57, 57) source:image];

               }];

您的单元格应该有UIImageView+AFNetworking类型的imageView。