方法一:在button按鈕的點擊事件中加上[self.textFiled resignFirstResponder];
方法二:
在xib檔案中,可以不在View頁面上添加一個View控制項 ,一個簡單的辦法是將View頁面的類設定為UIControl(該類繼承與UIView)
.h檔案:
#import <UIKit/UIKit.h>@interface HomeViewController : UIViewController@property (retain, nonatomic) IBOutlet UITextField *nameField;@property (retain, nonatomic) IBOutlet UITextField *passwordField;- (IBAction)textFieldDoneEditing:(id)sender;- (IBAction)backgroundTap:(id)sender;@end
.m檔案:
#import "HomeViewController.h"@interface HomeViewController ()@end@implementation HomeViewController
@synthesize nameField;@synthesize passwordField;- (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.}- (void)viewDidUnload{ [self setNameField:nil]; [self setNameField:nil]; [self setPasswordField:nil]; [super viewDidUnload]; // Release any retained subviews of the main view. // e.g. self.myOutlet = nil;}- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation{ return (interfaceOrientation == UIInterfaceOrientationPortrait);}- (void)dealloc { [nameField release]; [nameField release]; [passwordField release]; [super dealloc];}- (IBAction)textFieldDoneEditing:(id)sender { [sender resignFirstResponder]; }- (IBAction)backgroundTap:(id)sender { [nameField resignFirstResponder]; [passwordField resignFirstResponder];}@end