【发布时间】:2018-01-10 21:26:24
【问题描述】:
我在我的objective-c 应用程序中使用iCarousel。每个轮播view 包含一个image。所以在
-(UIView *)carousel:(iCarousel *)carousel viewForItemAtIndex:(NSInteger)index reusingView:(UIView *)view
我这样设置image:
[carouselImage setImageWithURL:[NSURL URLWithString:myStringUrl] placeholderImage:[UIImage imageNamed:placeholderImage]];
此行中的应用程序崩溃。这是错误:
-[CarouselUIView setImageWithURL:placeholderImage:]: unrecognized selector sent to instance
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[CarouselUIView setImageWithURL:placeholderImage:]: unrecognized selector sent to instance 0x123d10a70'
当我搜索时,我发现许多解决方案建议在 Build Settings 中使用 -ObjC 标志,但我已经有了这个标志。
编辑:附加代码
这是我的函数的全部代码:
-(UIView *)carousel:(iCarousel *)carousel viewForItemAtIndex:(NSInteger)index reusingView:(UIView *)view {
UIImageView * carouselImage;
if (view == nil) {
NSData *tempArchiveView = [NSKeyedArchiver archivedDataWithRootObject:self.carouselItemView];
CarouselUIView * carousselView = [NSKeyedUnarchiver unarchiveObjectWithData:tempArchiveView];
view = carousselView;
}
carouselImage = (UIImageView *) [view viewWithTag:0];
[carouselImage setImageWithURL:[NSURL URLWithString: myStringUrl] placeholderImage:[UIImage imageNamed:imagePlaceholder]];
return view;
}
还有CarouselView:
#import <UIKit/UIKit.h>
@interface CarouselUIView : UIView
@property (weak, nonatomic) IBOutlet UIImageView * carouselImage;
@end
【问题讨论】:
-
你能显示一些额外的代码吗
-
当然可以!
-
您在此处提供的代码不足以为您提供正确的解决方案方向。无论如何,但我的猜测是
carsoulImage不是UIImageView但它是CarouselUIView -
检查 carouselImage 类名。使用 isKindOfClass。
-
能不能添加这个viewForItemAtIndex相关的代码
标签: ios objective-c uiimageview icarousel