UITextView设置placeholder
下面是我的代码,可以直接拿来用
#import <UIKit/UIKit.h> @interface CustomTextView : UITextView
@property(nonatomic,strong)NSString *placeholder;
@end
#import "CustomTextView.h" @interface CustomTextView ()
@property(nonatomic,strong)UILabel *placeLab;
@end @implementation CustomTextView -(instancetype)initWithFrame:(CGRect)frame{
self = [super initWithFrame:frame];
if(self){ self.placeLab = [UILabel new];
self.placeLab.textColor = [ImageService colorWithHexString:GRAY_COLOR];
[self addSubview:self.placeLab];
self.placeLab.textAlignment = NSTextAlignmentRight;
[self.placeLab mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.left.offset(5);
make.width.equalTo(self.mas_width).offset(-10);
}];
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(beginChange) name:UITextViewTextDidBeginEditingNotification object:self];
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(didChange) name:UITextViewTextDidChangeNotification object:self]; }
return self;
}
-(void)setFont:(UIFont *)font {
[super setFont:font];
self.placeLab.font = font;
}
-(void)setTextAlignment:(NSTextAlignment)textAlignment{
[super setTextAlignment:textAlignment];
self.placeLab.textAlignment = textAlignment;
} -(void)setPlaceholder:(NSString *)placeholder{
_placeholder = placeholder;
self.placeLab.text = placeholder;
} -(void)beginChange{
if([self.text isEqualToString:@""]){
self.placeLab.hidden = NO;
}else{
self.placeLab.hidden = YES;
}
}
-(void)didChange{
if([self.text isEqualToString:@""]){
self.placeLab.hidden = NO;
}else{
self.placeLab.hidden = YES;
}
}
-(void)setText:(NSString *)text{
[super setText:text];
[self beginChange];
} @end
-(void)dealloc{
[[NSNotificationCenter defaultCenter] removeObserver:self name:UITextViewTextDidBeginEditingNotification object:self];
[[NSNotificationCenter defaultCenter] removeObserver:self name:UITextViewTextDidChangeNotification object:self];
}
UITextView设置placeholder的更多相关文章
- UITextView实现placeHolder方法汇总
UITextField中有一个placeholder属性,可以设置UITextField的占位文字,起到提示用户的作用.可是UITextView就没那么幸运了,apple没有给UITextView提供 ...
- iOS TextView输入长度限制 设置placeholder
textView在使用中通常会有2个功能是最常用的 设置placeholder 限制输入长度 TYLimitedTextView刚好是为了解决这个2个问题而诞生的,下面讲解TYLimitedTextV ...
- 教大家怎样给UITextView加入placeholder扩展
怎样扩展UITextView以追加placeholder功能呢? 我们的需求是:追加placeholder功能 方案讨论: 通过继承UITextView的方式 通过扩展UITextView的方式 分析 ...
- iOS - UITextView实现placeHolder占位文字
iOS之UITextView实现placeHolder占位文字的N种方法 前言 iOS开发中,UITextField和UITextView是最常用的文本接受类和文本展示类的控件.UITextFie ...
- UITextView 实现placeholder的方法
本文转载至 http://www.cnblogs.com/easonoutlook/archive/2012/12/28/2837665.html 在UITextField中自带placeholder ...
- UITextView实现PlaceHolder的方式
实现UITextView实现PlaceHolder的方式的方式有两种,这两种方法的核心就是通过通知来添加和去除PlaceHolder:下面来介绍两种方法:个人比较喜欢第一种,看起来更加合理. 方法1: ...
- 【代码笔记】iOS-UITextField设置placeholder颜色
一,效果图. 二,工程图. 三,代码. RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController ...
- 设置placeholder字体颜色
/*设置placeholder字体颜色*/::-webkit-input-placeholder{ color: #FFF;}:-ms-input-placeholder{ color: #FFF;} ...
- UITextfield设置Placeholder颜色 控件 内边距、自适应高度
//创建UITextField对象 UITextField * tf=[[UITextField alloc]init]; //设置Placeholder颜色 [text setAttribut ...
随机推荐
- swoole webSocket服务
socket.php <?php //创建websocket服务器对象,监听0.0.0.0:9502端口 $ws = ); //监听WebSocket连接打开事件 (刚打开的时候会给客户端发送 ...
- js操作DOM在父元素中的结尾添加子节点注意
impressionHtml=`<img src=${value} alt=""/>`; document.getElementById("wrapper&q ...
- ABBYY OCR技术教电脑阅读缅甸语(上)
缅甸联邦共和国,原名缅甸,是东南亚的一个国家,从1962年到2010年,缅甸一直被政变后上台的军政府统治,直至最近5年它才对外界开放,与其他国家建立了贸易与文化联系. 缅甸语由很多方言组成,但所有方言 ...
- 【ArcGIS】栅格分析-问题之001(转)
在arcgis中进行栅格计算时,碰到这样的错误ERROR 000539:Error running expression:rcexec()<type 'exceptions.ValueError ...
- 128、View 绘制流程 & 自定义View
记清楚函数调用的顺序才能准确地进行调用. 根据调用链,可将整个绘制过程分为三部分:Measure - Layout - Draw Measure 过程 1. 测量过程由上至下,在measure过程的最 ...
- Unity 给Mono脚本添加Try Catch工具
using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Run ...
- modbus ASCII和MODBUS RTU区别
下表是MODBUS ASCII协议和RTU协议的比较: 协议 开始标记 结束标记 校验 传输效率 程序处理 ASCII :(冒号) CR,LF LRC 低 直观,简单,易调试 RTU 无 无 CRC ...
- django高并发优化
我开始对web开发产生了兴趣,并决定自己也尝试开发一个网站.在此之前,我做过3年的java application的开发,对web开发应该算一无所知.在比较了java,php,ror,和python后 ...
- bootstrap 弹出框实现点击后打开离开后关闭
$("#PersonName").popover({ trigger: 'manual', placement: 'bottom', //title: '<div style ...
- ubuntu16.04 ROS环境下配置和运行SVO
ubuntu16.04 ROS环境下配置和运行SVO https://blog.csdn.net/nnUyi/article/details/78005552