gpt4 book ai didi

iOS IBAction 方法永远不会被调用

转载 作者:行者123 更新时间:2023-11-29 11:13:58 27 4
gpt4 key购买 nike

我正在学习 CS193p Stanford iOS 类(class),并且即将完成作业 3 - 在该作业中,我还将图形计算器转换为适用于 iPad 的通用应用程序。当在计算器中输入程序(例如“x + 3”)然后用户按下图形按钮时,该应用程序会绘制图形。在 iPhone 上,当按下 Graph 按钮时,我只是继续操作,但在 iPad 上,我有一个 UISplitViewController,我从 Graph 按钮设置了一个目标操作:

- (IBAction)ipadGraphPressed:(UIButton *)sender {
if ([self splitViewGraphViewController]) {
[[self.splitViewController.viewControllers lastObject] setProgram:self.brain.program];
}
}

这会在 GraphViewController 中调用 setProgram:,然后在 GraphView 上调用 setNeedsDisplay: 并绘制图形。

为了比较,这里是适用于 iPhone 的 segue 方法:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
[segue.destinationViewController setProgram:self.brain.program];
}

我非常确定按钮与其操作方法之间建立了连接,但是当我运行应用程序时,按下按钮时永远不会调用此操作方法。是否还有其他检查以确保调用该方法?

最佳答案

我遇到了同样的问题。我在 IBOutlets 和 IBActions 上正确连接了所有内容。导致问题的原因是按钮顶部的透明 View 阻挡了触摸。

在我调整 View 大小使其不会遮挡其下方的按钮后,它解决了我的问题。

关于iOS IBAction 方法永远不会被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10289652/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com