一 概述
從本節開始開發一款私人通訊錄,主要功能:
-
通訊錄登記界面,輸入賬戶和密碼,點擊登陸,進入聯繫人列表界面
-
聯繫人列表顯示聯繫人列表,註銷和添加聯繫人功能
<!--more-->
二 功能演示
三 功能實現
3.1 框架搭建
-
Navigation 頁面
-
Login賬戶密碼輸入頁面
-
通訊錄頁面
3.2 LoginController監聽
3.2.1 代理
-
設置代理:_accountField.delegate=self;
-
繼承代理類:@interface LoginControllerViewController ()<UITextFieldDelegate>
-
調用代理的方法
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { NSLog(@"shouldChangeCharactersInRange---%@",textField.text); return YES; }
3.2.2 通知
-
viewDidLoad設置通知監聽
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textChange) name:UITextFieldTextDidChangeNotification object:_accountField];
-
設置監聽方法(textChange)
-(void)textChange { NSLog(@"%@",_accountField.text); _loginBtn.enabled=_accountField.text.length&&_pwdField.text.length; }
-
dealloc移除監聽
-(void)dealloc { [[NSNotificationCenter defaultCenter]removeObserver:self]; }
3.2.3 addTarget
-
設置Target
[_accountField addTarget:self action:@selector(textChange) forControlEvents:UIControlEventEditingChanged]; [_pwdField addTarget:self action:@selector(textChange) forControlEvents:UIControlEventEditingChanged];
-
設置Target中的方法(textChange)
-(void)textChange { NSLog(@"%@",_accountField.text); _loginBtn.enabled=_accountField.text.length&&_pwdField.text.length; }