我是iOS新手,我正在关注this tutorial。无法连接IBAction查看
下面是我试图将IBAction连接到我的视图的屏幕截图。
我想在每次触摸视图(即关闭键盘)时执行方法releaseKeyboard
。
我不使用故事板。
我的文件:
- challAppDelegate.h
- challAppDelegate.m
- challViewController.h
- challViewController.m
- challViewController.xib
challAppDelegate.h
#import <UIKit/UIKit.h>
@interface challAppDelegate : UIResponder <UIApplicationDelegate>
{
UINavigationController *navigationController;
}
@property (strong, nonatomic) UIWindow *window;
@property (strong, nonatomic) UINavigationController *navigationController;
@end
challAppDelegate.m
#import "challAppDelegate.h"
#import "challViewController.h"
@implementation challAppDelegate
@synthesize window = _window;
@synthesize navigationController;
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
UIViewController *rootController =
[[challViewController alloc]
initWithNibName:@"challViewController" bundle:nil];
navigationController = [[UINavigationController alloc]
initWithRootViewController:rootController];
self.window = [[UIWindow alloc]
initWithFrame:[[UIScreen mainScreen] bounds]];
[self.window addSubview:navigationController.view];
[self.window makeKeyAndVisible];
return YES;
}
...
...
challViewController.h
#import <UIKit/UIKit.h>
@interface challViewController : UIViewController
@property(nonatomic, retain) IBOutlet UITextField *signInEmailAddress;
@property(nonatomic, retain) IBOutlet UITextField *signInPassword;
@property(nonatomic, retain) IBOutlet UIButton *signInSignInButton;
@property(nonatomic, retain) IBOutlet UIButton *signInRegisterButton;
-(void) releaseKeyboardAction;
-(IBAction) signInAction:(int)sender;
-(IBAction) registerAction:(int)sender;
-(IBAction) releaseKeyboard:(id)sender;
@end
challViewController.m
#import "challViewController.h"
@interface challViewController()
@end
@implementation challViewController
@synthesize signInEmailAddress; // cria os getters e setters
@synthesize signInPassword; // cria os getters e setters
@synthesize signInSignInButton; // cria os getters e setters
@synthesize signInRegisterButton; // cria os getters e setters
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
self.title = @"Sign In";
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (void)releaseKeyboardAction
{
[signInEmailAddress resignFirstResponder];
[signInPassword resignFirstResponder];
}
- (IBAction)releaseKeyboard:(id)sender
{
[self releaseKeyboardAction];
}
- (IBAction)registerAction:(int)sender
{
//
}
- (IBAction)signInAction:(int)sender
{
//
}
@end
我做错了什么?
感谢
您无法将“IBAction”作为IBOutlet连接到您的视图。你想对视图和'releaseKeyboard:'方法做什么? – Rich
在按下视图中的任何位置时释放键盘(因为键盘没有退出按钮)。我没有将IBActions连接到textFields和按钮。 –
有一个“完成”按钮 - 当你在键盘上按下这个按钮时,你想让键盘消失吗? – Rich