PlaceholderをTextField以外でも表示させたい!
TextFieldのPlaceholderって便利ですよね。
TextViewでも同じようにできるかと思ってたら...できない!
「Placeholder in UITextView」でGoogle先生に聞いてみると、ばっちりの回答が。
iphone - Placeholder in UITextView - Stack Overflow
UIPlaceHolderTextView.m
<Interface Builderを使う場合>
- (void)awakeFromNib { [super awakeFromNib]; [self setPlaceholder:@"placeholder"];//ここの文字列を置き換える。 [self setPlaceholderColor:[UIColor lightGrayColor]]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textChanged:) name:UITextViewTextDidChangeNotification object:nil]; }
<Interface Builderを使う場合>
- (id)initWithFrame:(CGRect)frame { if( (self = [super initWithFrame:frame]) ) { [self setPlaceholder:@"placeholder"];//ここの文字列を置き換える。 [self setPlaceholderColor:[UIColor lightGrayColor]]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textChanged:) name:UITextViewTextDidChangeNotification object:nil]; } return self; }
思ったとおりに表示できた!便利!