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. 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.).
You'll notice that -pushBetter
is not listed among them.
You need to write a -pushBetter
method and wire it up to the 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):
-[HBFSViewController pushBetter]: unrecognized selector sent to instance 0x693ccb0'
Can you to a global search for "pushBetter" and see where it is in your project??
User contributions licensed under CC BY-SA 3.0