1

我有一个以两种不同方式刷新的表格视图。两者都是通过一个按钮,事实上,两者都是通过同一个类中的同一个IBAction!

这是我的问题:

这些按钮位于两个不同的 .xib 文件中,与表格视图相同的 xib 中的按钮完美运行,而不同 xib 中的按钮执行获取新数据的方法,但不会刷新表格。同样的方法,不同的结果。为了获得另一个按钮的 IBAction,我只需在 IB 中拖出一个 NSObject 并将其类设置为包含 IBAction 的表视图的类,然后将其连接到我的按钮。

我怎样才能解决这个问题?

4

1 回答 1

1

听起来您正在第二个 XIB 中创建您的类的第二个并行对象。该按钮向该实例发送一条消息,该实例执行您期望的一些操作,因为它是正确类的对象,但它实际上不是正确的对象并且未连接到您的视图。

您需要做的是确保两个按钮都与同一个实例通信。如果目标位于响应者链中,这是最简单的——您应该能够将按钮的目标设置为First Responder,并且消息会找到正确的位置。否则,您需要获取指向 XIB 的目标的指针,例如,作为将成为File's Owner的对象中的 IBOutlet 。

于 2010-06-15T21:14:32.090 回答