背景资料:
我最近从 Lion 升级到 MountainLion 和最新的 xCode。我正在开发的应用程序的部署目标是 10.7。
问题:
我有一个 NSButton
使用 在 Interfacebuilder 中进行设置标题:“开始”和 替代:“停止” .在按钮中 IBAction
我检查应用程序的状态(BOOL isRunning)并在每次按下按钮时更改状态,如下所示:
[startStopButton setState:[appDelegate.dataController appIsRunning]];
一切正常。 自从我升级到新的 xCode 按钮不再更改标题。
我已经尝试过的事情:
这个按钮。重置一切。没有帮助。
[startStopButton setTitle:@"Start"];
[startStopButton setAlternateTitle:@"Stop"];
检查按钮是否未处于混合模式。然后硬编码 statechanges
类型为 int 的 1 和 0。根本没有变化。
[startStopButton setTitle:@"TEST"]
然后更改状态,它将状态更改一次以交替但不再返回。 “TEST”字符串也从未出现在按钮上... [appDelegate.dataController appIsRunning]
的值和它返回正确的值。
我不知道如何解决这个问题。一切正常,我什么也没改变,这对我来说没有任何意义。有没有人遇到过类似的问题?
最佳答案
在 Interface Builder 中,将按钮类型更改为“Toggle”。
我不确定原因,但似乎备用标题不适用于“瞬时”和“按下”按钮类型。
关于macos - 自 SDK 更新以来 NSButton 不显示替代标题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13542965/