博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ios自定义UITextView 支持placeholder的方法
阅读量:5889 次
发布时间:2019-06-19

本文共 2079 字,大约阅读时间需要 6 分钟。

hot3.png

效果图:212830_owy9_1186234.gif

h文件

@interface YLTextView : UITextView@property (copy ,nonatomic)NSString *placeHoder;@property (assign,nonatomic)BOOL hidePlaceHoder; //是否对placeHoder进行隐藏@end

m 文件

////  YLTextView.m//  YangLand////  Created by 赵大财 on 16/3/13.//  Copyright © 2016年 tshiny. All rights reserved.//#import "YLTextView.h"@interface YLTextView ()@property (weak ,nonatomic)UILabel *placeHoderLabel;@end@implementation YLTextView- (instancetype)initWithFrame:(CGRect)frame {    if (self = [super initWithFrame:frame]) {        self.font = [UIFont systemFontOfSize:13];    }    return self;}-(void)setFont:(UIFont *)font {    [super setFont:font];    self.placeHoderLabel.font = font;    [self.placeHoderLabel sizeToFit]; //文字的大小 就是label的尺寸}-(void)setPlaceHoder:(NSString *)placeHoder {    _placeHoder = placeHoder;    self.placeHoderLabel.text = placeHoder;    [self.placeHoderLabel sizeToFit];}- (void)setHidePlaceHoder:(BOOL)hidePlaceHoder {    _hidePlaceHoder = hidePlaceHoder;    self.placeHoderLabel.hidden = hidePlaceHoder;}- (UILabel *)placeHoderLabel {    if (!_placeHoderLabel) {        UILabel *placeHoderLabel = [[UILabel alloc]init];        [self addSubview:placeHoderLabel];        _placeHoderLabel = placeHoderLabel;    }    return _placeHoderLabel;}- (void)layoutSubviews {    [super layoutSubviews];    self.placeHoderLabel.x = 10;    self.placeHoderLabel.y = 10;}@end

控制器的使用

  [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textChange) name:UITextViewTextDidChangeNotification object:nil]; //监听文字改变  //文字改变方法   - (void)textChange {    if (self.textView.text.length) {        _textView.hidePlaceHoder = YES;    }else {        _textView.hidePlaceHoder = NO;    }}- (YLTextView *)textView {    if (!_textView) {        _textView = [[YLTextView alloc]initWithFrame:self.view.bounds];        _textView.delegate = self;        _textView.alwaysBounceVertical = YES; //这是让textView可上下滑动        _textView.placeHoder = @"请发表今天的心情...";        _textView.font = [UIFont systemFontOfSize:20];    }    return _textView;}

转载于:https://my.oschina.net/zhaodacai/blog/647547

你可能感兴趣的文章
poj1635
查看>>
C# LINQ详解(一)
查看>>
视频直播点播nginx-rtmp开发手册中文版
查看>>
ruby学习总结04
查看>>
Binary Tree Paths
查看>>
Ueditor自定义ftp上传
查看>>
线程以及多线程
查看>>
PHP队列的实现
查看>>
单点登录加验证码例子
查看>>
[T-SQL]从变量与数据类型说起
查看>>
稀疏自动编码之反向传播算法(BP)
查看>>
二叉搜索树转换成双向链表
查看>>
WebLogic和Tomcat的区别
查看>>
java类中 获取服务器的IP 端口
查看>>
occActiveX - ActiveX with OpenCASCADE
查看>>
redmine
查看>>
css 序
查看>>
DirectshowLib摄像头拍照的”未找到可用于建立连接的介质筛选器组合“ 解决办法...
查看>>
wcf-1
查看>>
三种简单排序
查看>>