//
// ViewController.h
// UI2_UITextField
//
// Created by zhangxueming on 15/7/2.
// Copyright (c) 2015年 zhangxueming. All rights reserved.
// #import <UIKit/UIKit.h> @interface ViewController : UIViewController <UITextFieldDelegate> //遵守协议 @end //
// ViewController.m
// UI2_UITextField
//
// Created by zhangxueming on 15/7/2.
// Copyright (c) 2015年 zhangxueming. All rights reserved.
// #import "ViewController.h" @interface ViewController () @end @implementation ViewController
//UITextField --- 文本框 - (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(20, 100, self.view.frame.size.width-40, 50)];
textField.backgroundColor = [UIColor cyanColor];
//设置文本框的风格
//设置圆角型风格
textField.borderStyle = UITextBorderStyleRoundedRect;
//设置默认提示文本,当开始编辑内容时候, 提示内容消失
textField.placeholder = @"请输入文字";
//设置文本框初始内容
textField.text = @"hello world";
//设置文本内容颜色
textField.textColor = [UIColor redColor];
//设置文本内容字体
textField.font = [UIFont boldSystemFontOfSize:24];
//设置文本对齐方式
//textField.textAlignment = NSTextAlignmentCenter;
//设置编辑文本时,清空原文本内容
textField.clearsOnBeginEditing = YES;
//设置显示清除按钮
//UITextFieldViewModeNever,
//UITextFieldViewModeWhileEditing,
//UITextFieldViewModeUnlessEditing,
//UITextFieldViewModeAlways
textField.clearButtonMode = UITextFieldViewModeAlways;
//设置左视图
UIImageView *leftImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"003.png"]];
//设置左视图的origin位置无效
leftImageView.frame = CGRectMake(0, 0, 30, 30);
textField.leftViewMode = UITextFieldViewModeAlways;
textField.leftView = leftImageView;
//设置右视图
UIImageView *rightImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"icon.png"]];
rightImageView.frame = CGRectMake(0, 0, 30, 30);
textField.rightViewMode = UITextFieldViewModeAlways;
textField.rightView = rightImageView;
//在模拟器上切换键盘 command + K
//shift + command + k 开启电脑键盘 //设置暗文输入
textField.secureTextEntry = YES;
//设置键盘风格
//UIKeyboardTypeDefault,       默认键盘,支持所有字符
//UIKeyboardTypeASCIICapable,  支持ASCII的默认键盘
//UIKeyboardTypeNumbersAndPunctuation,  标准电话键盘,支持+*#字符
//UIKeyboardTypeURL,           URL键盘,支持.com按钮 只支持URL字符
//UIKeyboardTypeNumberPad,     数字键盘
//UIKeyboardTypePhonePad,     电话键盘
//UIKeyboardTypeNamePhonePad,   电话键盘,也支持输入人名
//UIKeyboardTypeEmailAddress,   用于输入电子 邮件地址的键盘
//UIKeyboardTypeDecimalPad,     数字键盘 有数字和小数点
//UIKeyboardTypeTwitter,        优化的键盘,方便输入@、#字符
//UIKeyboardTypeAlphabet = UIKeyboardTypeASCIICapable, textField.keyboardType = UIKeyboardTypeURL;
//设置键盘return键风格
textField.returnKeyType = UIReturnKeyDone; //设置竖直方向对齐方式
textField.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
//设置水平方向对齐方式
//textField.contentHorizontalAlignment = UIControlContentHorizontalAlignmentCenter;
textField.delegate = self; UITextField *secondTextField = [[UITextField alloc] initWithFrame:CGRectMake(20, 200, self.view.frame.size.width-40, 50)];
secondTextField.backgroundColor = [UIColor yellowColor];
secondTextField.borderStyle = UITextBorderStyleRoundedRect;
secondTextField.secureTextEntry = YES; [self.view addSubview:secondTextField];
//设置window第一响应者身份
[secondTextField becomeFirstResponder]; //设置viewController作为textField的代理
secondTextField.delegate = self;
[self.view addSubview:textField]; UILabel *label= [[UILabel alloc] initWithFrame:CGRectMake(20, 300, self.view.frame.size.width-40, 50)];
label.backgroundColor = [UIColor grayColor];
label.tag = 100;
[self.view addSubview:label];
} //代码标签
#pragma mark ----UITextFieldDelegate---- - (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
NSLog(@"将要开始编辑");
return YES;//返回NO不能进行后续的编辑
} - (void)textFieldDidBeginEditing:(UITextField *)textField
{
NSLog(@"文本开始编辑");
} - (BOOL)textFieldShouldEndEditing:(UITextField *)textField
{
NSLog(@"将要结束编辑");
return YES;
} - (void)textFieldDidEndEditing:(UITextField *)textField
{
NSLog(@"文本编辑结束");
UILabel *label = (UILabel *)[self.view viewWithTag:100];
label.text = textField.text;
} - (BOOL)textFieldShouldReturn:(UITextField *)textField
{
NSLog(@"returnKey被点击");
//隐藏键盘
[textField resignFirstResponder];
return YES;
} - (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
} @end

UI2_UITextField的更多相关文章

随机推荐

  1. [AngularJS] Using Services in Angular Directives

    Directives have dependencies too, and you can use dependency injection to provide services for your ...

  2. 你可能不知道的SQL问题

    1.  如下是sql语句和结果, SELECT count(*) AS total FROM orders; +-------+ | total | +-------+ | 150 | +------ ...

  3. TIDB ---NEW SQL

    https://github.com/pingcap/tidb http://www.pingcap.com/ Quick Start Run TiDB with Docker You can qui ...

  4. 终端I/O之综述

    终端I/O有两种不同的工作模式: 规范模式输入处理(Canonical mode input processing).在这种模式中,终端输入以行为单位进行处理.对于每个读要求,终端驱动程序最多返回一行 ...

  5. 使用idea创建maven的web项目

    如果是第一次打开软件直接点击 Create New Project ,如果之前已经打开过项目了,需要点击菜单中 File → New Project … 如下图: 选择 Maven module ,输 ...

  6. jquery学习笔记2

    1.点击时文字消失,失去焦点时文字再出现 <input type="text" value="郭强" onfocus="if(value=='郭 ...

  7. javaEE学习笔记-单例模式

    定义: 确保一个类只有一个实例,而且自行实例化并向整个系统提供这个实例. 单例模式的三要素: (1)私有的静态的成员变量 (2)私有的构造方法 (3)公共的静态的入口点方法 单例模式的分类: (1)饿 ...

  8. C#三大支柱之多态

    1.包含与委托---has-a 2.嵌套类型(枚举.类.接口.结构等) 由于只有嵌套类才可声明为私有,通过嵌套类则可以完全控制内部类型的访问级别. 嵌套类型是包含类的成员,所有可以访问包含类的私有成员 ...

  9. 【阿里云产品公测】阿里云ECS服务器,PTS网站性能

    作者:阿里云用户321房产网 系统环境:CentOS 6.3 运行组件:Nginx + php + mysql + 缓存加速为eAccelerator 运行网站:基于phpcms开发模板:321房产网 ...

  10. java 动态代理范例 InvocationHandler与Proxy

    java 动态代理范例 InvocationHandler与Proxy,拦截与代理 java.lang.reflect.Proxy,Proxy 提供用于创建动态代理类和实例的静态方法.newProxy ...