zoukankan      html  css  js  c++  java
  • 用UITextView模拟UITextField的placeHolder

    用UITextView模拟UITextField的placeHolder

    效果:

    源码:

    //
    //  ViewController.m
    //  TextView
    //
    //  Created by YouXianMing on 14/12/18.
    //  Copyright (c) 2014年 YouXianMing. All rights reserved.
    //
    
    #import "ViewController.h"
    
    static NSString *placeHolderStr = @"User Name";
    
    @interface ViewController ()<UITextViewDelegate>
    
    @property (nonatomic, strong) UITextView  *textView;
    @property (nonatomic, strong) UIButton    *button;
    
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        
        // 反应的按钮
        self.button = [[UIButton alloc] initWithFrame:self.view.bounds];
        [self.button addTarget:self
                        action:@selector(buttonEvent)
              forControlEvents:UIControlEventTouchUpInside];
        [self.view addSubview:self.button];
        
        // textView
        self.textView = [[UITextView alloc] initWithFrame:CGRectMake(0, 20, 320, 200)];
        self.textView.layer.borderWidth = 1.f;
        self.textView.layer.borderColor = [UIColor grayColor].CGColor;
        self.textView.delegate  = self;
        self.textView.text      = placeHolderStr;
        self.textView.font      = [UIFont systemFontOfSize:20.f];
        self.textView.textColor = [UIColor grayColor];
        [self.view addSubview:self.textView];
    }
    
    #pragma mark - 代理方法
    - (BOOL)textViewShouldBeginEditing:(UITextView *)textView {
        // 设置编辑状态文字颜色
        textView.textColor = [UIColor blackColor];
        
        // 如果文字为placeHolder文字
        if ([textView.text isEqualToString:placeHolderStr]) {
            textView.text      = @"";
        }
        
        return YES;
    }
    - (BOOL)textViewShouldEndEditing:(UITextView *)textView {
        
        // 如果长度为0,则显示placeHolder文字
        if (textView.text.length == 0) {
            textView.text = placeHolderStr;
            textView.textColor = [UIColor grayColor];
        }
        
        return YES;
    }
    
    /**
     *  反应的按钮
     */
    - (void)buttonEvent {
        [self.textView resignFirstResponder];
    }
    
    @end

    核心代码:

  • 相关阅读:
    nginx 启用php解析及解决无法访问报错Primary script unknown的过程
    百度云服务器连接码云的坑
    async函数测试
    centos6.8安装mysql5.7及用navicat远程连接
    JavaScript模块知识理解
    为什么if else 语句里不能用函数声明定义函数,而可以用函数表达式定义函数
    Java8-对map过滤
    git cherry-pick 的使用
    Java8-对map排序
    Java8过滤器(Filter)
  • 原文地址:https://www.cnblogs.com/YouXianMing/p/4172066.html
Copyright © 2011-2022 走看看