.h定义:
#import <UIKit/UIKit.h>
@interface CloverText : UITextView <UITextViewDelegate>
@property(nonatomic,strong) UITextView *TV;
- (id)initWithFrame:(CGRect)frame placeholder:(NSString *)placeholder;
@end
.m定义:
#import "CloverText.h"
@implementation CloverText
- (id)initWithFrame:(CGRect)frame placeholder:(NSString *)placeholder
{
self = [super initWithFrame:frame];
if (self) {
// Initialization code
self.TV = [[UITextView alloc]initWithFrame:CGRectMake(0, 0, frame.size.width, frame.size.height)];
self.TV.text = placeholder;
self.TV.textColor = [UIColor grayColor];
self.TV.backgroundColor = [UIColor clearColor];
self.TV.editable = NO;
[self addSubview:self.TV];
[self sendSubviewToBack:self.TV];
self.delegate = self;
}
return self;
}
- (void)textViewDidChange:(UITextView *)textView {
if (self.text.length == 0) {
self.TV.hidden = NO;
}
else {
self.TV.hidden = YES;
}
}
@end
使用方法:
#import "ViewController.h"
#import "CloverText.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
self.view.backgroundColor = [UIColor blackColor];
CloverText *text = [[CloverText alloc]initWithFrame:CGRectMake(0, 100, 320, 50) placeholder:@"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"];
text.frame = CGRectMake(0, 100, 320, 50);
text.font = [UIFont systemFontOfSize:13];
[self.view addSubview:text];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
效果:
DEMO下载地址:http://download.csdn.net/detail/u011918080/6970483