貓貓分享,必須精品
素材代碼地址: http://blog.csdn.net/u013357243/article/details/44587005
原文地址:http://blog.csdn.net/u013357243/article/details/44571163 java
//
// NYViewController.m
// 05-UITextField事件_UIKit複習
//
// Created by apple on 15-3-23.
// Copyright (c) 2015年 znycat. All rights reserved.
//
#import "NYViewController.h"
@interface NYViewController () <UITextFieldDelegate>//遵照協議,相似java中得接口
@property (weak, nonatomic) IBOutlet UITextField *userNameText;
@property (weak, nonatomic) IBOutlet UITextField *pwdText;
@end
@implementation NYViewController
/** 前幾天主要學習了: @interface UIImage : NSObject @interface UIControl : UIView @interface UIImageView : UIView @interface UILabel : UIView @interface UIButton : UIControl @interface UITextField : UIControl 他們的層次關係很明確了,前面主要就是這幾個類:UIView、UIControl、UIImage、UIImageView、UILabel、UIButton、UITextField。 文本框代理方法:UITextField實現代理方法。 代理的用處: 監聽那些不能經過addTarget監聽的事件! 主要用來負責在兩個對象之間,發生某些事件時,來傳遞消息或者數據 代理實現的步驟 1,成爲(子)控件的代理,————父親(控制器)成爲兒子(文本框)的代理 2,遵照協議:目的是利用智能提示快速編寫代碼 協議:<UITextFieldDelegate>(類名後面加上(不寫也能調用)) 3,實現協議方法 */
- (void)viewDidLoad
{
[super viewDidLoad];
//歡迎你們加貓貓微信znycat 或者QQ1764541256 ios交流學習羣:304570962
}
/**點擊登錄將輸入的文字輸出到控制檯上*/
-(IBAction)login
{
NSLog(@"%s%@ %@", __func__, self.userNameText.text, self.pwdText.text);
}
/**文本框代理方法 */
-(BOOL)textFieldShouldReturn:(UITextField *)textField
{
NSLog(@"%@",textField.text);
//若是光標在帳戶裏面點擊return(回車)
if (textField == self.userNameText) {
//讓密碼成爲第一響應者
[self.pwdText becomeFirstResponder];
} else if(textField == self.pwdText){
//若是密碼輸完了,點了回車了直接調用登錄的監聽方法
[self login];
//讓密碼文本框關閉鍵盤
[self resignFirstResponder];
}
return YES;//返回值爲YES表示能夠輸入,爲NO表示不能輸入
}
@end
他們的層次關係很明確了,前面主要就是這幾個類:UIView、UIControl、UIImage、UIImageView、UILabel、UIButton、UITextField。ios
文本框代理方法:UITextField實現代理方法。設計模式
代理的用處:
監聽那些不能經過addTarget監聽的事件!
主要用來負責在兩個對象之間,發生某些事件時,來傳遞消息或者數據微信
代理實現的步驟
1,成爲(子)控件的代理,————父親(控制器)成爲兒子(文本框)的代理
2,遵照協議:目的是利用智能提示快速編寫代碼 協議:(類名後面加上(不寫也能調用))
3,實現協議方法
(其實代理模式有不少,我得理解就是本身的事情請別人來作,這是一個設計模式)markdown
我得理解是這樣的對於UITextField 這個類來講,他裏面有個_delegate(英文代理)的屬性,經過這個方法可讓他的父類UIControl來作一些動做(內部應該是由他本身作的,畢竟對於面向對象的思想來講,誰的數據誰負責,這裏實際上是將數據傳遞給了他爹)網絡
另外協議能夠不寫,由於它自己有,這裏不寫也能運行,若是錯誤了就直接崩掉了app
固然這些都能用代碼寫學習
UITextField在storyboard中的設置
UITextField顯示:暗文secore勾中
ui
UITextField顯示刪除小叉號:Clear Button中選中
Appears while editing就能夠顯示小叉號atom
ps:UI基礎學習看貓貓這7篇項目和文章就夠了,固然若是不懂得能夠找貓貓交流哈,喵了個咪的讓咱們一塊兒努力學習吧 ps:歡迎你們加貓貓微信znycat 或者QQ1764541256 ios交流學習羣:304570962 PS昨晚網絡斷了,素材沒有傳上去,今天剛剛傳上,話說,csdn的博客系統真的值得吐糟,喵了個咪的