[英]When clicking a button app kills process
Basically I've created a soundboard app from another app. 基本上,我已经从另一个应用程序创建了一个音板应用程序。 However i keep getting the same error and I can't understand whats wrong. 但是我一直收到同样的错误,我不明白怎么了。 I'm quite new to xcode and I've searched all over the internet for help. 我对xcode还是很陌生,我已经在互联网上搜索了所有帮助。 I'll post all information which maybe required and hopefully can get this working. 我会发布所有可能需要的信息,希望可以使它正常工作。
2011-04-27 00:37:01.437 SoundBoard[11613:207] -[HBFSViewController pushBetter]: unrecognized selector sent to instance 0x693ccb0
2011-04-27 00:37:01.440 SoundBoard[11613:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[HBFSViewController pushBetter]: unrecognized selector sent to instance 0x693ccb0'
*** Call stack at first throw:
(
0 CoreFoundation 0x02553b99 __exceptionPreprocess + 185
1 libobjc.A.dylib 0x026a340e objc_exception_throw + 47
2 CoreFoundation 0x025556ab -[NSObject(NSObject) doesNotRecognizeSelector:] + 187
3 CoreFoundation 0x024c52b6 ___forwarding___ + 966
4 CoreFoundation 0x024c4e72 _CF_forwarding_prep_0 + 50
5 UIKit 0x002b27f8 -[UIApplication sendAction:to:from:forEvent:] + 119
6 UIKit 0x0033dde0 -[UIControl sendAction:to:forEvent:] + 67
7 UIKit 0x00340262 -[UIControl(Internal) _sendActionsForEvents:withEvent:] + 527
8 UIKit 0x0033ee0f -[UIControl touchesEnded:withEvent:] + 458
9 UIKit 0x002d63d0 -[UIWindow _sendTouchesForEvent:] + 567
10 UIKit 0x002b7cb4 -[UIApplication sendEvent:] + 447
11 UIKit 0x002bc9bf _UIApplicationHandleEvent + 7672
12 GraphicsServices 0x02e33822 PurpleEventCallback + 1550
13 CoreFoundation 0x02534ff4 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 52
14 CoreFoundation 0x02495807 __CFRunLoopDoSource1 + 215
15 CoreFoundation 0x02492a93 __CFRunLoopRun + 979
16 CoreFoundation 0x02492350 CFRunLoopRunSpecific + 208
17 CoreFoundation 0x02492271 CFRunLoopRunInMode + 97
18 GraphicsServices 0x02e3200c GSEventRunModal + 217
19 GraphicsServices 0x02e320d1 GSEventRun + 115
20 UIKit 0x002c0af2 UIApplicationMain + 1160
21 SoundBoard 0x00001b30 main + 102
22 SoundBoard 0x00001ac1 start + 53
)
terminate called after throwing an instance of 'NSException'
## HBFS VIEW CONTROLLER .M ##
import "HBFSViewController.h"
import <AVFoundation/AVAudioPlayer.h>
@implementation HBFSViewController
- (IBAction)pushAbout {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"About" message:@"The Mr Dolan Soundboard : Created by Charlie Gilbertson" delegate:nil cancelButtonTitle:@"Dismiss" otherButtonTitles:nil];
[alert show];
[alert release];
}
- (IBAction)pushAnd {
NSString *path = [[NSBundle mainBundle] pathForResource:@"And" ofType:@"aif"];
AVAudioPlayer* theAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
theAudio.delegate = self;
[theAudio play];
}
- (IBAction)pushLad {
NSString *path = [[NSBundle mainBundle] pathForResource:@"Lad" ofType:@"aif"];
AVAudioPlayer* theAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
theAudio.delegate = self;
[theAudio play];
}
- (IBAction)pushNoLegs {
NSString *path = [[NSBundle mainBundle] pathForResource:@"No legs" ofType:@"aif"];
AVAudioPlayer* theAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
theAudio.delegate = self;
[theAudio play];
}
- (IBAction)pushMyDaughter {
NSString *path = [[NSBundle mainBundle] pathForResource:@"My Daughter" ofType:@"aif"];
AVAudioPlayer* theAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
theAudio.delegate = self;
[theAudio play];
}
- (IBAction)pushLass {
NSString *path = [[NSBundle mainBundle] pathForResource:@"Lass" ofType:@"aif"];
AVAudioPlayer* theAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
theAudio.delegate = self;
[theAudio play];
}
- (IBAction)pushYO {
NSString *path = [[NSBundle mainBundle] pathForResource:@"YO" ofType:@"aif"];
AVAudioPlayer* theAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
theAudio.delegate = self;
[theAudio play];
}
- (IBAction)pushTape {
NSString *path = [[NSBundle mainBundle] pathForResource:@"Tape" ofType:@"aif"];
AVAudioPlayer* theAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
theAudio.delegate = self;
[theAudio play];
}
- (IBAction)pushMySon {
NSString *path = [[NSBundle mainBundle] pathForResource:@"My Son" ofType:@"aif"];
AVAudioPlayer* theAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
theAudio.delegate = self;
[theAudio play];
}
- (IBAction)pushNoArms {
NSString *path = [[NSBundle mainBundle] pathForResource:@"No arms" ofType:@"aif"];
AVAudioPlayer* theAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
theAudio.delegate = self;
[theAudio play];
}
- (IBAction)pushCanDo {
NSString *path = [[NSBundle mainBundle] pathForResource:@"Can do better than you" ofType:@"aif"];
AVAudioPlayer* theAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
theAudio.delegate = self;
[theAudio play];
}
- (IBAction)pushOr {
NSString *path = [[NSBundle mainBundle] pathForResource:@"Or" ofType:@"aif"];
AVAudioPlayer* theAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
theAudio.delegate = self;
[theAudio play];
}
- (IBAction)pushScotch {
NSString *path = [[NSBundle mainBundle] pathForResource:@"Scotch" ofType:@"aif"];
AVAudioPlayer* theAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
theAudio.delegate = self;
[theAudio play];
}
- (IBAction)pushAndThey {
NSString *path = [[NSBundle mainBundle] pathForResource:@"And they've got" ofType:@"aif"];
AVAudioPlayer* theAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
theAudio.delegate = self;
[theAudio play];
}
- (IBAction)pushEgg {
NSString *path = [[NSBundle mainBundle] pathForResource:@"Egg" ofType:@"aif"];
AVAudioPlayer* theAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
theAudio.delegate = self;
[theAudio play];
}
@end
## HBFS VIEW CONTROLLER .H ##
import <UIKit/UIKit.h>
import <Foundation/Foundation.h>
import <AVFoundation/AVAudioPlayer.h>
@interface HBFSViewController :UIViewController <AVAudioPlayerDelegate> {
IBOutlet UIBarButtonItem *aboutButton;
IBOutlet UIToolbar *toolBar;
}
- (IBAction)pushAbout;
- (IBAction)pushAnd;
- (IBAction)pushLad;
- (IBAction)pushLass;
- (IBAction)pushOr;
- (IBAction)pushScotch;
- (IBAction)pushTape;
- (IBAction)pushYO;
- (IBAction)pushEgg;
- (IBAction)pushNoLegs;
- (IBAction)pushNoArms;
- (IBAction)pushMyDaughter;
- (IBAction)pushMySon;
- (IBAction)pushCanDo;
- (IBAction)pushAndThey;
@end
See this error message? 看到此错误消息?
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[HBFSViewController pushBetter]: unrecognized selector sent to instance 0x693ccb0
Now look at all the IBAction
methods you've listed ( -pushAbout
, etc.). 现在查看列出的所有IBAction
方法( -pushAbout
等)。
You'll notice that -pushBetter
is not listed among them. 您会注意到, -pushBetter
未在其中列出。
You need to write a -pushBetter
method and wire it up to the UIButton
. 您需要编写一个-pushBetter
方法并将其连接到UIButton
。
It looks like you're somehow sending a pushBetter method call to your view controller which it is apparently not prepared for (according to your code and the error): 看起来您似乎以某种方式向视图控制器发送了一个pushBetter方法调用,这显然是没有准备的(根据您的代码和错误):
-[HBFSViewController pushBetter]: unrecognized selector sent to instance 0x693ccb0'
Can you to a global search for "pushBetter" and see where it is in your project?? 您可以在全球范围内搜索“ pushBetter”并查看它在项目中的位置吗?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.