//
// AppDelegate.m
// 07 - UITextFeild协议方法
//
// Created by 余婷 on 16/4/8.
// Copyright (c) 2016年 余婷. All rights reserved.
//
#import "AppDelegate.h"
@interface AppDelegate ()<UITextFieldDelegate>
@end
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
self.window.backgroundColor = [UIColor whiteColor];
self.window.rootViewController = [[UIViewController alloc] init];
self.window.rootViewController.view.userInteractionEnabled = NO;
//==================================
//1.创建textField对象
UITextField * field = [[UITextField alloc] initWithFrame:CGRectMake(100, 100, 200, 60)];
//设置边框
[field setBorderStyle:UITextBorderStyleRoundedRect];
field.tag = 10;
//显示在界面上
[self.window addSubview:field];
//1.创建textField对象
UITextField * field2 = [[UITextField alloc] initWithFrame:CGRectMake(100, 250, 200, 60)];
//设置边框
[field2 setBorderStyle:UITextBorderStyleRoundedRect];
field2.tag = 20;
//显示在界面上
[self.window addSubview:field2];
//2.设置代理
//把点前对象作为field的代理,那么必须self的类去遵守协议实现协议方法
field.delegate = self;
field2.delegate = self;
//3.显示清除按钮
[field setClearButtonMode:UITextFieldViewModeAlways];
[self.window makeKeyAndVisible];
return YES;
}
#pragma mark - UITextField Delegate
//当用户点击textField弹出的系统键盘上返回键的时候会调用这个方法
//返回值:是否返回
//参数:委托
- (BOOL)textFieldShouldReturn:(UITextField *)textField{
//设置委托的背景颜色
textField.backgroundColor = [UIColor yellowColor];
//textField放弃第一响应者 (收起键盘)
//键盘是textField的第一响应者
[textField resignFirstResponder];
return YES;
}
//当文本输入框已经开始编辑的时候会调用这个方法
- (void)textFieldDidBeginEditing:(UITextField *)textField{
if (textField.tag == 10) {
NSLog(@"第一个已经开始编辑");
}else{
NSLog(@"第二个已经开始编辑");
}
}
//当文本输入框已经停止编辑的时候会调用这个方法
//两种停止编辑的情况:1.放弃第一响应者 2.点击了其他的输入框
- (void)textFieldDidEndEditing:(UITextField *)textField{
NSLog(@"已经停止编辑");
}
//返回值:是否通过点击的键盘的按钮的值,去改变textField的text值
//参数1:委托
//参数2:当前输入字符的位置
//参数3:当前输入的字符(以字符串形式返回)
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{
NSLog(@"%@", NSStringFromRange(range));
NSLog(@"%@", string);
//按'a'收起键盘
if ([string isEqualToString:@"a"]) {
[textField resignFirstResponder];
}
return YES;
}
#pragma mark - 以下方法基本不用,知道就行了
//设置输入框是否可以开始编辑(默认是YES)
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField{
return YES;
}
//设置输入框是否可以停止编辑 (默认是YES)
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField{
return YES;
}
//设置清除按钮是否可用
- (BOOL)textFieldShouldClear:(UITextField *)textField{
return YES;
}
@end
UITextFeild协议方法
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- UITableView UITableViewDataSource协议/** 与数据相关的协议*/1.返回分区数 ...
- import UIKit// 协议在代理模式中的使用protocol BuyDelegate: class {fu...
- 最近新建工程写东西时候 发现了一个奇怪的问题 创建完collectionView 发现无论如何都不走collect...