• 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

    效果:

    左侧空出空隙

    限制输入长度

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

  • 相关阅读:
    in exists
    oracle 12514文件解决
    oracle11g自动内存管理
    lvs为何不能完全替代DNS轮询
    druid安装
    macbook 安装win7
    GBT MBR
    python的文件操作
    zabbix简易安装指南
    zatree的安装
  • 原文地址:https://www.cnblogs.com/YouXianMing/p/3973845.html
Copyright © 2020-2023  润新知