iOS:收到有关按钮点击的错误

Posted

技术标签:

【中文标题】iOS:收到有关按钮点击的错误【英文标题】:iOS: Getting an error regarding button tap 【发布时间】:2014-02-25 07:53:04 【问题描述】:

由于某种原因,我在点击连接到 IBAction 的按钮时遇到错误。在我的 homeViewController 中,用户执行一个操作,将一个新的 viewController 添加到 navigationController,在这个视图控制器的视图中是一个包含 按钮 的较小视图。我重新检查了我的代码,并通过检查器查看我是否遗漏了任何内容,但没有发现任何奇怪的地方。

这是我添加的视图控制器的 .h 文件:

@property (weak, nonatomic) IBOutlet UIView *popupView;
@property (weak, nonatomic) IBOutlet UIImageView *blurredImageView;
@property (weak, nonatomic) UIImage *blurredImage;

- (void)presentEventEditViewControllerWithEventStore:(EKEventStore*)eventStore;
- (IBAction)addEvent:(id)sender;;
- (IBAction)cancelEvent:(id)sender;

当我点击一个按钮而不将 IBAction 链接到其中任何一个时,没有错误。一旦我链接它们,应用程序就会崩溃并显示以下错误:

附:我在之前的错误中也收到了以下信息(在取消链接和重新链接之前):

-[OS_xpc_connection cancelEvent:]:

更新:

我通过以下方式加载bannerViewController:

BannerPopUpViewController *BPV = [[BannerPopUpViewController alloc] initWithNibName:@"BannerPopUpViewController" bundle:nil];
    BPV.blurredImage = [self screenshot];
    [self.view.window addSubview:BPV.view];

这是我提到的第一个错误,由 crashlytics 提供:

但由于我取消链接操作并重新链接后,我不断收到以下内容:

【问题讨论】:

这不是错误消息。它在控制台中说了什么? - (IBAction)addEvent:(id)sender;;为什么是 2 个分号? 它甚至可能取决于您如何将控制器保存在内存中。如果在调用操作之前释放它,则繁荣 @dimimpou 哎呀!修正了分号。再次构建,应用程序崩溃,出现 exc bad access 错误。 您需要再次运行并粘贴错误,它将帮助我们确定“什么”没有识别选择器? 【参考方案1】:

当你这样做时:

[self.view.window addSubview:BPV.view];

视图由其父视图(在本例中为窗口)保留,但没有保留 BPV 视图控制器。有些东西需要,否则它会被释放,然后每当按下任何按钮时,都会调用一个被破坏的对象(打开僵尸来验证)。

通过将 BVP 保存在将其添加为智利视图控制器的强大属性中来保留 BVP。

【讨论】:

我通过仪器运行它,你对被破坏的物体是正确的。在添加视图之前,我继续添加了以下行,现在一切似乎都在工作! [self.navigationController addChildViewController:BPV]; 好东西。 p.s.请记住勾选解决问题的答案;-)

以上是关于iOS:收到有关按钮点击的错误的主要内容,如果未能解决你的问题,请参考以下文章

.net 中有关 system.io 的错误

ios 11 - App Store 中错误的更新按钮

归档有关符号链接的 iOS 项目时出错

我收到有关枚举的错误(我认为)

我收到有关某些 Neon 代码的错误消息

有关Xcode4.2打包成ipa到底该怎么操作