当我按下“自己的”按钮时,我的应用程序崩溃了。我不知道我的代码有什么问题。我是新手,所以如果我完全搞砸了,请不要努力请:)。编辑:这是Xcode所说的:
#1 0x000144fd in -[UIApplication sendAction:to:from:forEvent:] ()
该应用程序在该行崩溃:
if (thing.hidden == NO) {
这是属于“拥有”的代码:
- (IBAction)own {
if (thing.hidden == NO) {
int rNumber = rand() % 4;
switch (rNumber) {
case 0:
result.text = @"A";
break;
case 1:
result.text = @"B";
break;
case 2:
result.text = @"C";
break;
case 3:
result.text = @"D";
break;
default:
break;
}
}
if (thing.hidden == YES) {
int rNumber = rand() % 3;
答案 0 :(得分:2)
可能有几个rason
IBAction实际上只是一个提示,告诉界面构建器在哪里找到对象中的方法,以便将控件链接到方法。
在iOS中,操作可以采用零个,一个或两个参数。
如果有一个参数,该参数是发送消息的对象:
-(IBAction) someAction: (id) sender;
如果有两个参数,则采用以下形式:
- (IBAction) someAction:(id) sender forEvent: (UIEvent*) event;
你可以使用 - (void)拥有并连接到nib文件中的按钮
答案 1 :(得分:0)
您的代码似乎没有错,假设对象 thing 和 result 正确保留。
答案 2 :(得分:0)
- (IBAction)own {
if (thing.hidden == NO) {
int rNumber = rand() % 4;
NSString *myText = @""; //
switch (rNumber) {
case 0:
myText = @"A";
break;
case 1:
myText = @"B";
break;
case 2:
myText = @"C";
break;
case 3:
myText = @"D";
break;
default:
break;
}
result.text = myText;
}
if (thing.hidden == YES) {
int rNumber = rand() % 3;
答案 3 :(得分:0)
我刚刚遇到了这个问题。这是因为内存管理,我将按钮相关的动作发送到已发布的viewController。希望这有帮助。(顺便说一句,我使用弧形模式)