本文共 2160 字,大约阅读时间需要 7 分钟。
UITextField使用的一些细节
这篇博文是我自己使用UITextField的一些总结,并没有太多营养,并会持续更新。
2014.9.15
--------------------------------------------------------------------------------------------------------------------------------------
源码:
//// RootViewController.m// UITextField//// Created by YouXianMing on 14-9-15.// Copyright (c) 2014年 YouXianMing. All rights reserved.//#import "RootViewController.h"@interface RootViewController ()@property (nonatomic, strong) UITextField *textField;@end@implementation RootViewController- (void)viewDidLoad{ [super viewDidLoad]; _textField = [[UITextField alloc] initWithFrame:CGRectMake(10, 80, 300, 40)]; _textField.layer.borderWidth = 1.f; _textField.layer.borderColor = [UIColor redColor].CGColor; _textField.backgroundColor = [UIColor whiteColor]; _textField.textAlignment = kCTTextAlignmentLeft; // 左对齐 _textField.delegate = self ; _textField.keyboardType = UIKeyboardTypeNumberPad; // 数字键盘 _textField.placeholder = @"请输入4位验证码"; _textField.clearsOnBeginEditing = YES; // 空出左侧边缘空隙(通过添加一个view来实现) UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 10, CGRectGetHeight(_textField.bounds))]; _textField.leftView = view; _textField.leftViewMode = UITextFieldViewModeAlways; [self.view addSubview:_textField]; // 添加手势 [self addGesture];}- (void)addGesture{ // 手势 UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapGesture:)]; [self.view addGestureRecognizer:tap];}// 限制输入长度- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{ if (range.location >= 4) { return NO; } else { return YES; }}- (void)tapGesture:(UITapGestureRecognizer *)tap{ // 取消第一响应状态 [_textField resignFirstResponder];}@end
效果:
左侧空出空隙
限制输入长度
--------------------------------------------------------------------------------------------------------------------------------------
转载地址:http://khvol.baihongyu.com/