按钮没有反应

时间:2015-04-14 22:04:26

标签: objective-c swift nsbutton

我对NSButton有一种奇怪的行为。这是正常的,直到我在我的应用程序中的其他地方这样做伏都教。然后按钮不再对点击事件做出反应。它看起来仍然正常(所以没有禁用)。当我点击它时,它什么都不做。知道我应该在NSButton的属性中查看哪些内容可能会被意外更改? (相当确定我没有触摸按钮本身。)

3 个答案:

答案 0 :(得分:0)

确保您的按钮位于superView中的“可触摸”区域。我的意思是它被放置在superView界限内(如果没有,你可以看到它,取决于剪辑属性,你不能与它交互)。要检查它,请为容器视图设置颜色。 还要检查userInteraction是否已启用...

希望它有所帮助。

答案 1 :(得分:0)

如果你的按钮没有给出动画,那么它可能是一个Xcode错误。之前我遇到过类似的问题,我提交了一个错误,并在下一个Xcode版本上修复了它。看看我的问题。 Toolbar bar button item not working properly in SplitViewController

如果你真的需要给它一个动画,你可以在代码中用这样的东西来做。请注意,这是未经测试的,因此它可能无法正常工作,或者您可能需要一些修复,但您明白了这一点:)

- (IBAction)buttonAction:(id)sender {

self.button.titleLabel.textColor = [UIColor lightGrayColor];

// Action

self.button.titleLabel.textColor = [UIColor darkTextColor];

// Or with delay
[self performSelector:@selector(changeButtonColor) withObject:nil afterDelay:0.1];
}

答案 2 :(得分:0)

我明白了。按钮打开了一个瞬态弹出窗口。为了通过我编码的动作关闭此弹出窗口

view.window!.orderOut(self)

替换后
view.window!.performClose(self)
奇怪的效果消失了。我不确定,但这看起来像Swift运行时中的一个错误。我会报告并看看会发生什么。