开发者社区> 游贤明> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

UITextField使用的一些细节

简介:
+关注继续查看

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 ()<UITextFieldDelegate>

@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

效果:

左侧空出空隙

限制输入长度

--------------------------------------------------------------------------------------------------------------------------------------

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Swift - 如何让UIView,UILabel和UIImageView之间类型互相转化
Swift - 如何让UIView,UILabel和UIImageView之间类型互相转化
0 0
模仿系统方法自定义UIAlertView的实现和代理
模仿系统方法自定义UIAlertView的实现和代理
0 0
设置UIView层次
设置UIView层次
0 0
Swift: UITextView&UITextField 限制字数和输入内容
Swift: UITextView&UITextField 限制字数和输入内容
0 0
有关UIView、subview的几个基础知识点-IOS开发 (实例)
首先要弄懂几个基本的概念。   一)三个结构体:CGPoint、CGSize、CGRect   1.  CGPoint C代码   /* Points. */          struct CGPoint {       CGFloat x;       CGFloat y;     };     typedef struct CGPoint CGPoint;   看到这个想必你已经懂了,不再解释。
740 0
UITextField 基本使用方法总结
http://blog.csdn.net/qingsi00/article/details/8467461
433 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载