[signInButton addTarget: self
Действие: @selector (buttonClicked :)
forControlEvents: UIControlEventTouchUpInside];
- это действительный код, который не должен входить в ваш интерфейс (файл .h) Интерфейс предназначен для прототипирования и определения местных жителей и реквизита. Я предполагаю, что вы делаете это программно, если вам не нужен IBOutlet и IBAction Для новичков, вероятно, лучше сделать это в конструкторе интерфейсов ..
Ваш интерфейс (.h файл) должен выглядеть так:
#import <UIKit/UIKit.h>
@interface MyViewController : UIViewController {
UIButton *_signInButton;
}
@property(nonatomic,retain) UIButton * signInButton;
-(IBAction)buttonClicked :(id)sender;
@end
Ваша реализация (файл .m) должна выглядеть следующим образом:
#import "MyViewController.h"
@implementation MyViewController
@synthesize signInButton=_signInButton;
- (void)viewDidLoad {
[super viewDidLoad];
self.signInButton = [[UIButton alloc] initWithFrame:CGRectMake(X_POS, Y_POS, 30, 30)];
[self.signInButton addTarget:self action:@selector(buttonClicked:)
forControlEvents:UIControlEventTouchUpInside];
[self.signInButton setTitle:@"PRESS ME" forState:UIControlStateNormal];
[self.view addSubview:self.signInButton];
}
-(IBAction)buttonClicked :(id)sender
{
NSLog(@"CLICKED!");
//THE BUTTON WAS CLICKED, DO STUFF
}
- (void)dealloc
{
[_signInButton release];_signInButton=nil;
}
@end