警告:完成新手Xcode问题。
在MainViewController.h
我有以下一行:
IBOutlet WorkItem * m_WIone;
我创建了一个名为WorkItem
的类,它继承自UILabel
。上面这一行是为了让我可以m_WIone
使用MainViewController
(最终将成为这类对象的数组)作为WorkItem
中的成员变量。
我尝试了各种方法来调用Reset
方法并最终确定:
[m_WIone Reset];
其中WorkItem
是WorkItem.h
方法。该方法在WorkItem.m
中声明为:
- (void)重置;
并在{{1}}中:
- (void)重置{}
在此方法中有或没有内容时,应用程序始终崩溃:
线程1:编程接收信号:“SIGABRT”。
在记录中,我读到:
由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:' - [UILabel重置]:无法识别的选择器发送到实例0x6a5f9f0'
我该如何解决这个问题?我甚至正确地声明了这个成员变量吗? (尽管通过StackOverflow拖网,我找不到解决方案。)
答案 0 :(得分:2)
您是否为NIB指定了自定义类?看起来你想在XCode的Interface Builder中使用一个小部件来使用你的自定义类。只会实例化默认类(UILabel)而不是自定义类。
单击您正在使用的UILabel作为插座并更改类(此处的屏幕截图适用于UITableView,但它对UILabel应该是相同的。)
话虽如此,你还有其他选择。而不是仅使用UILabel(您最终计划制作它们的数组)。为什么不使用UITableView并根据您认为合适的方式自定义单元格(因为UITableViews最适合显示项目列表)?