无法识别的选择器错误。
问题描述:
我想发送一个UIColor到UIView的子类。我收到一个无法识别的选择器错误。无法识别的选择器错误。
-[Subclass fillView]: unrecognized selector sent to instance 0x2006f880
(子类是在我的项目一类,但我不知道它是如何与fillView。
这是导致问题就行了。
view.fillView.fillColor = fillColor;
子类具有用于drawRect方法的属性
@property (strong, nonatomic) UIColor *fillColor;
CGContextSetFillColorWithColor(context, _fillColor.CGColor);
答
您的代码
view.fillView.fillColor = fillColor;
相当于
[[view fillView] setFillColor:fillColor];
所以无论类“视图”是(它似乎是类的子类“的),它不会给方法fillView响应。该错误与fillColor无关。您的代码在进入setFillColor调用之前崩溃。
+0
这是正确的。我从数组中获取视图,并且意外地尝试将错误类的对象分配给恰好在数组中的对象。谢谢! – Mrwolfy 2013-03-19 08:04:09
答
在你的情况view.fillView.fillColor将无法正常工作。
如果你真的要设置一种颜色作为您的视图的背景下,试试这个
[self.view setBackgroundColor:[UIColor redColor]];
希望这会有所帮助。
什么是fillView?你为什么要使用它? – borrrden 2013-03-19 07:16:26
你在使用弧吗?如果是这样,请确保您保留对该视图的引用。我曾经有过类似的问题,并使viewController @ @属性做了诡计。 – Jsdodgers 2013-03-19 07:20:08