iOS 之 UITextField

UITextField 相关细节处理:

1.  设置leftView , rightView

let leftView = UIView()

// 设置leftView/rightView之后,勿忘设置leftViewMode/rightViewMode
textField.leftView = leftView
textField.leftViewMode = .Always

2.  设置placeholder的颜色

let placeHolder = "placeHolder"
let attrDict = [NSForegroundColorAttributeName:UIColor.redColor()]
let placeHolderAttr = NSAttributedString(string: placeHolder, attributes: attrDict)
textField.attributedPlaceholder = placeHolderAttr// 当然你也可以设置 textField.attributedText

3.  设置clearButton的颜色

  3.1 方案一:

    不用系统的clearButton,设置rightView,然后textField.rightViewModel=.WheelEditing. 但是这种方案 就是在textField中成为第一响应者就会出现clearButton,而不是在textField非空时出现

  3.2 方案二:

    自定义CustomTextfield,继承自UITextField,重写layoutSubviews,在layoutSubviews方法中找到clearButton,设置图片。但是这个方法也有个问题,如果leftView,或者TextField中有其他的button的子view,这个 方法并不是那么好

  3.3 方案三:

    不设置UITextField的属性,直接是button.然后他们有相同的superView。

///////////////////////

    

时间: 2024-10-31 18:45:56

iOS 之 UITextField的相关文章

IOS的UITextField,UIButton,UIWebView的一些属性介绍和IOS图片资源的使用技巧

有时候UI给开发的资源跟实际的frame不一致,这个时候我们就要去拉伸图片 UIImage* image = [[UIImage imageNamed:@"text_field_bg.png"] stretchableImageWithLeftCapWidth:20 topCapHeight:0]; //stretchableImageWithLeftCapWidth使图片有拉伸效果 UITextField的属性介绍: UITextField* field = [[UITextFiel

[转]iOS中UITextField 使用全面解析

001//初始化textfield并设置位置及大小002  UITextField *text = [[UITextField alloc]initWithFrame:CGRectMake(20, 20, 130, 30)];003  004//设置边框样式,只有设置了才会显示边框样式 005  text.borderStyle = UITextBorderStyleRoundedRect;006 typedef enum {007    UITextBorderStyleNone,008   

iOS 限制UITextfield的字数

之前在cocoachina看到一篇文章http://www.cocoachina.com/ios/20160106/14889.html,挺实用的,非常好用,肯定以后可以遇到,登录的时候肯定能遇到 - (void)textFieldTextDidChanged:(UITextField *)sender {     NSString * tempString = sender.text;          if (sender.markedTextRange == nil && tempS

IOS中UITextField限制字数,特别是中文

首先,如果只是数字和英文,那只需要实现UITextField或UITextView的Delegate. - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { if (textField == self.titleField) { if (textField.length > 20) return N

iOS中UITextField和UITextView屏蔽表情符号的输入

起因:云端服务器代码不支持表情符号的输入,所以APP端需要屏蔽掉所有的UITextField和UITextView屏蔽表情符号输入 解决方法:想到两种解决方案,一种是在输入之后过滤掉,网上找了一些过滤的算法,好像都不太好用:另一种屏蔽ios输入表情符输入.(以下解决方法非原创,贴上来是整理记录一下,也给遇到同样问题的人提供一点帮助吧^_^) (1)以textview为例 加入以下代理方法,就禁止了表情符的输入,[UITextInputMode currentInputMode]这个方法已经在io

iOS中UITextField的字数限制

刚开始的时候, 采用的是shouldChangeCharactersInRange http://stackoverflow.com/questions/433337/set-the-maximum-character-length-of-a-uitextfield 这样在输入全部是英文的情况下是可以的. 但是当输入是中文时, 由于shouldChangeCharactersInRange判断的是当前键盘的字符数, 会出现这样的问题: 比如你还剩下2个字可以打, 你想输入"张三", &

(iOS)修改UITextField高度

修改UITextField高度 === --- ## 是否可以通过修改frame改变高度 网上流传的代码中使用如下一份代码: //    以下代码任然不能改变UITextField高度 CGRect rect = _userNameField.bounds; rect.size.height = 88; rect.size.width = 20; _userNameField.bounds = rect; 所以不可以. --- ## 通过自定义子类实现修改UITextField高度 在子类中覆盖

iOS之UITextfield详细解析

//初始化textfield并设置位置及大小 UITextField *text = [[UITextField alloc]initWithFrame:CGRectMake(20, 20, 130, 30)]; //设置边框样式,只有设置了才会显示边框样式 text.borderStyle = UITextBorderStyleRoundedRect; typedef enum { UITextBorderStyleNone, UITextBorderStyleLine, UITextBord

IOS基础-UITextField

UITextField通常用于外部文字输入,就是常见的输入框.如下用代码详细说明UITextField的各种属性和方法 - (void)viewDidLoad {     [super viewDidLoad];     //文本输入框 UITextField     UITextField *textField = [[UITextField alloc] init];     //设置     textField.frame = CGRectMake(50, 50, 200, 200);  

iOS 限制UITextField输入字符

开篇 之前做过一个即时通信的项目,需要限制输入框文本的字符个数,当时从网络上搜寻了几个方法,解决了需求,但是网络上的解决办法不是很全面:今天又遇到一个限制搜索框UISearchBar输入字符个数的问题,所以就就想把字符限制这个问题做的完整彻底一点,下面我提出几个问题,然后一一再做解答,看看你在做字符限制的时候有没有遇到同样问题.在提出这几个问题之前,我先介绍几个方法: - (BOOL)searchBar:(UISearchBar *)searchBar shouldChangeTextInRan