Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 按钮没有反应_Objective C_Swift_Nsbutton - Fatal编程技术网

Objective c 按钮没有反应

Objective c 按钮没有反应,objective-c,swift,nsbutton,Objective C,Swift,Nsbutton,我有一个奇怪的行为与一个按钮。它正常工作,直到我在我的应用程序的其他地方这样做巫毒。此时按钮不再对单击事件作出反应。它看起来仍然正常,所以没有被禁用。当我点击它时,它什么也不做。知道我应该在哪里查找可能被意外更改的NSButton属性吗?我很确定我没有碰按钮本身 确保您的按钮在superView中处于“可触摸”区域。我的意思是它必须被放置在它的superView边界内,如果没有,你可以看到它,这取决于剪辑属性,你不能与它交互。要进行检查,请为容器视图设置颜色。 另外,请检查用户交互是否已启用 希

我有一个奇怪的行为与一个按钮。它正常工作,直到我在我的应用程序的其他地方这样做巫毒。此时按钮不再对单击事件作出反应。它看起来仍然正常,所以没有被禁用。当我点击它时,它什么也不做。知道我应该在哪里查找可能被意外更改的NSButton属性吗?我很确定我没有碰按钮本身

确保您的按钮在superView中处于“可触摸”区域。我的意思是它必须被放置在它的superView边界内,如果没有,你可以看到它,这取决于剪辑属性,你不能与它交互。要进行检查,请为容器视图设置颜色。 另外,请检查用户交互是否已启用


希望能有所帮助。

如果您的按钮没有显示动画,则可能是Xcode错误。我以前也遇到过类似的问题,我提交了一个bug,它在下一个Xcode版本中得到了修复。看看我的问题

如果你真的需要给它一个动画,你可以用类似这样的代码。请注意,这是未经测试的,因此可能无法工作,或者您可能需要进行一些修复,但您得到了以下想法:

- (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];
}

我想出来了。按钮打开了一个临时弹出窗口。为了因我编写的操作而关闭此popover

view.window!.orderOut(self)
在将其替换为

view.window!.performClose(self)

奇怪的效果消失了。我不确定,但这看起来像是Swift运行时中的一个bug。我会报告并查看结果。

确保按钮处于打开状态enabled@ChoppinBroccoli如前所述,它看起来没有变灰。你提到的伏都教是什么,你能显示打破按钮的代码吗?@Wezly不幸的是,这是不可能的。这是一个大型应用程序,并不是一个单一的地方会发生这种情况。但总是按那个按钮。有什么可以解释这种奇怪的行为吗。我猜这个按钮不是隐藏在一个透明的图像后面,就是被一个包含它的对象间接禁用了。我发现有几个例子需要编写一个递归下降例程,以找到以这种方式隐藏按钮的图像。按钮放在其他正常工作的按钮旁边。你所说的用户交互是什么意思?那不是我们的财产NSButton@Bisca可能会与iOS UIButtonYes混淆,我正在使用UIButton,很抱歉,我正在使用6.3。但闻起来像是另一个XCODE bug:-