我将尽力解释:
我目前正在关注两节课。一个数据库类和一个视图控制器,目前所有设置如下:
View.h-具有“数据库* myDatabase;”
View.m-在ViewLoad期间调用“ OpenDB”,并具有一个使用以下方法的按钮方法:[myDatabase getRow];单击时。
Database.h-具有“ sqlite3 db;”
Database.m-具有“ getRow”方法和“ openDB”,其使用在Database.h中声明的“ db”。
这不会在构建过程中导致任何错误,但是当我的程序运行时,当我单击我的按钮[myDatabase getRow]时;什么也没做。我只是在方法内部使用了NSLog,但从未调用过它。如果很难理解,我将发布代码片段,但我认为那将是太多的代码。
最佳答案
通常,当您没有看到希望看到的消息,并且情况完全令人困惑时,这是因为消息的接收者为零。
在viewDidLoad中放置一个断点,并确保myDatabase实际上已分配了一个值。
gdb中的“ po myDatabase” ...
如果实际上myDatabase实际上不是nil,那么第二个令人烦恼的原因就是试图弄清为什么某些事情没有按照您期望的方式发生而导致您的XIB缺少连接。
确保按钮的操作已连接到控制器,或者如果以编程方式设置按钮的操作,则请确保控制器的按钮插座已连接好。