iphone os 5 - 无法识别的选择器发送到实例

时间:2014-01-15 02:11:25

标签: ios iphone uiimage

我有一个错误。

UIImage *img = [[UIImage imageNamed:@"bg_message.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(47, 32, 47, 32) resizingMode:UIImageResizingModeStretch];


UIImage *img = [[UIImage imageNamed:@"bg_message.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(47, 32, 47, 32) resizingMode:UIImageResizingModeStretch];
UIImageView *imgView = [[UIImageView alloc] initWithFrame:frame];
[imgView setImage:img];
[imgView setTag:99999999];
[self.view addSubview:imgView];

并且只见os 5,os 6和7。

//This is the error message
  

* 由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:' - [UIImage resizableImageWithCapInsets:resizingMode:]:无法识别的选择器发送到实例0xd86c2c0'

我不明白。 请帮助我的人! 非常感谢你!

2 个答案:

答案 0 :(得分:3)

-[UIImage resizableImageWithCapInsets:resizingMode:]仅适用于iOS 6或之后。(参考:Link

如果您在新Xcode中使用此API构建应用,则不会向您显示警告或错误。但是当您在iOS 5设备中运行应用程序时,它将抛出无法识别的选择器异常。很难捕捉到这样的错误。因此,最好的测试方法是在iOS 5模拟器/设备上运行。

查找文档也是一个很好的做法。 Apple很好地编写了文档。你也可以通过阅读它学到很多东西。

答案 1 :(得分:1)

resizingMode的变体仅在ios6中添加。如果你想在ios5下运行,你必须检查该方法是否可用。