如何使用BKSplitView让Disclosure按钮正常播放

时间:2011-01-21 06:00:29

标签: cocoa interface-builder state nsbutton disclosure

我在一个使用BKToolkit的简单应用中设置了公开按钮。我已将Disclosure按钮与Push On Push Off连接到SplitView中的toggleCollapse:操作。该按钮适用于折叠并正确显示窗格的方面。它不能正确保持自己的状态与面板外观一致。

按钮以向上箭头开始,表示面板已打开。以下是事件序列:

  1. 我按下按钮关闭面板。披露箭头现在面朝下。
  2. 我按下按钮显示面板。披露箭头仍面朝下
  3. 任何后续按下按钮都不会改变任何内容。箭头仍然朝下。
  4. 第一次正确动画,以便后续按下什么不改变按钮的视图状态?

    alt text alt text

    这是错误的状态:

    alt text

1 个答案:

答案 0 :(得分:0)

这不是控件正常运行的方式。我打算问你如何设置它的状态,但看起来BKToolkit中的拆分视图控件记录了第一个发送者向其发送切换消息并在此后管理该发送者的状态。

这可能是一个问题,例如,如果您有一个菜单项调用此切换行为,并且已经使用它来测试切换。在这种情况下,您的按钮状态不会更新。

我没有看到一个简单的解决方案,因为这种行为在BKToolkit拆分视图的代码中是硬连线的。也许你的控件应该在你的应用程序的一个控制器中调用自己的切换方法,直接设置崩溃状态(所以一切都同意状态)并自己管理你所有的UI状态。