ios - 在 Objective C 中为按钮调用操作时出错

标签 ios objective-c uibutton action programmatically-created

我在 Objective C 中创建一个应用程序,当我在我的应用程序中按下按钮时收到运行时错误。这是创建按钮的代码。是的,在任何人询问之前,我必须使用编码版本。

extend = [UIButton buttonWithType:UIButtonTypeRoundedRect]; //3
[extend setFrame:CGRectMake(100, 50, 75, 50 )];
[extend setTitle:@"Extend" forState:UIControlStateNormal];
[extend addTarget:self action:@selector(extendPressed:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:extend];
[self.view bringSubviewToFront:extend];

retract = [UIButton buttonWithType:UIButtonTypeRoundedRect]; //3
[retract setFrame:CGRectMake(100, 110, 75, 50 )];
[retract setTitle:@"Retract" forState:UIControlStateNormal];
[extend addTarget:self action:@selector(retractPressed:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:retract];
[self.view bringSubviewToFront:retract];

这是 Action 。

- (IBAction)extendPressed:(UIButton *)sender{

    NSLog(@"Extend");

}

- (IBAction)retractPressedPressed:(UIButton *)sender{

    NSLog(@"Retract");

}

当我按下 Retract 按钮时,没有任何反应,但是当我按下 Extend 按钮时,应用程序崩溃并显示在调试控制台中:

2013-07-31 16:57:49.479 驱动器 3.0[1557:907] 扩展 2013-07-31 16:57:49.482 Drive 3.0[1557:907]-[driveViewController retractPressed:]: 无法识别的选择器发送到实例 0x1f564730 2013-07-31 16:57:49.483 Drive 3.0[1557:907] * 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“-[driveViewController retractPressed:]:无法识别的选择器发送到实例 0x1f564730” * 首先抛出调用栈: (0x33c9e3e7 0x3b999963 0x33ca1f31 0x33ca064d 0x33bf8208 0x35b98087 0x35b9803b 0x35b98015 0x35b978cb 0x35b97db9 0x35ac05f9 0x35 aad8e1 0x35aad1ef 0x377c55f7 0x377c5227 0x33c733e7 0x33c7338b 0x33c7220f 0x33be523d 0x33be50c9 0x377c433b 0x35b012b9 0x1a229 0x1 9f88) libc++abi.dylib:终止调用抛出异常

提前感谢任何能够提供帮助并告诉我我做错了什么的人。

最佳答案

你的方法名有错别字:

retractPressedPressed

应该只是:

retractPressed

关于ios - 在 Objective C 中为按钮调用操作时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17980876/

相关文章:

ios - NSMethodSignature 的 BOOL 编码错误

ios - Xcode 9 不会通过变量名自动完成函数

iphone - 如何在负位置的 subview 上点击

objective-c - 是否可以使用 NSBezierPath 用特定模式填充 NSRect?

ios - UIDocumentInteractionController 禁止在某些应用程序中打开

ios - UIButton 内的 UIImageView 有默认填充 - 如何删除?

ios - 如何在 iOS swift 中使用多个属性初始化 CBMutableCharacteristic

IOS swift UIPickerview问题

ios - UIButton 在 TableView 单元格中不可见

ios - Objective-c RegEx 变量名称($1、$2 等)