欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

iOS中修改UITextField占位符字體顏色的方法總結

 更新時間:2016年09月23日 11:32:26   作者:頑童大了已沒那么笨  
這篇文章給大家分享了iOS中修改UITextField占位符字體顏色的三個方法,分別是使用attributedPlaceholder屬性、重寫drawPlaceholderInRect方法和修改UITextField內(nèi)部placeholderLaber的顏色,下面我們一起來看看詳細的方法介紹。

前言

最近學了UITextField控件, 感覺在里面設置占位符非常好, 給用戶提示信息, 于是就在想占位符的字體和顏色能不能改變呢?下面是小編的一些簡單的實現(xiàn),有需要的朋友們可以參考。

修改UITextField的占位符文字顏色主要有三個方法:

1、使用attributedPlaceholder屬性

@property(nullable, nonatomic,copy) NSAttributedString  *attributedPlaceholder NS_AVAILABLE_IOS(6_0); // default is nil

2、重寫drawPlaceholderInRect方法

- (void)drawPlaceholderInRect:(CGRect)rect;

3、修改UITextField內(nèi)部placeholderLaber的顏色

[textField setValue:[UIColor grayColor] forKeyPath@"placeholderLaber.textColor"];

以下是詳細的實現(xiàn)過程

給定場景,如在注冊登錄中,要修改手機號和密碼TextField的placeholder的文字顏色。

效果對比


使用前


使用后

使用attributedPlaceholder

自定義GYLLoginRegisterTextField類,繼承自UITextField;實現(xiàn)awakeFromNib()方法,如果使用storyboard,那么修改對應的UITextField的CustomClassGYLLoginRegisterTextField即可

具體代碼如下:

#import "GYLLoginRegisterTextField.h"
@implementation GYLLoginRegisterTextField

- (void)awakeFromNib
{
 self.tintColor = [UIColor whiteColor];  //設置光標顏色

 //修改占位符文字顏色
 NSMutableDictionary *attrs = [NSMutableDictionary dictionary];
 attrs[NSForegroundColorAttributeName] = [UIColor whiteColor];
 self.attributedPlaceholder = [[NSAttributedString alloc] initWithString:self.placeholder attributes:attrs];
}

@end

重寫drawPlaceholderInRect方法

與方法一同樣,自定義GYLLoginRegisterTextField,繼承自UITextField,重寫drawPlaceholderInRect方法,后續(xù)相同

代碼如下:

#import "GYLLoginRegisterTextField.h"

@implementation GYLLoginRegisterTextField

- (void)awakeFromNib
{
 self.tintColor = [UIColor whiteColor];  //設置光標顏色
}

- (void)drawPlaceholderInRect:(CGRect)rect
{
 NSMutableDictionary *attrs = [NSMutableDictionary dictionary];
 attrs[NSForegroundColorAttributeName] = [UIColor whiteColor];
 attrs[NSFontAttributeName] = self.font;

 //畫出占位符
 CGRect placeholderRect;
 placeholderRect.size.width = rect.size.width;
 placeholderRect.size.height = rect.size.height;
 placeholderRect.origin.x = 0;
 placeholderRect.origin.y = (rect.size.height - self.font.lineHeight) * 0.5;
 [self.placeholder drawInRect:placeholderRect withAttributes:attrs];

 //或者
 /*
 CGPoint placeholderPoint = CGPointMake(0, (rect.size.height - self.font.lineHeight) * 0.5);
 [self.placeholder drawAtPoint:placeholderPoint withAttributes:attrs];
 */
}

@end

修改UITextField內(nèi)部placeholderLaber的顏色

使用KVC機制,找到UITextField內(nèi)部的修改站位文字顏色的屬性:placeholderLaber.textColor

代碼如下:

#import "GYLLoginRegisterTextField.h"
@implementation GYLLoginRegisterTextField

- (void)awakeFromNib
{
 self.tintColor = [UIColor whiteColor];  //設置光標顏色

 //修改占位符文字顏色
 [self setValue:[UIColor grayColor] forKeyPath@"placeholderLaber.textColor"];
}

@end

第三種方法比較簡單,建議可以將此封裝:擴展UITextField,新建category,添加placeholderColor屬性,使用KVC重寫setget方法。

總結

以上就是這篇文章的全部內(nèi)容了,希望能對大家開發(fā)iOS有所幫助,如果有疑問大家可以留言交流。

相關文章

  • iOS開發(fā)之隱藏導航欄線的簡單代碼

    iOS開發(fā)之隱藏導航欄線的簡單代碼

    這篇文章主要介紹了iOS開發(fā)之隱藏導航欄線的簡單代碼,需要的朋友可以參考下
    2017-10-10
  • IOS中UIWebView的使用詳解

    IOS中UIWebView的使用詳解

    這篇文章主要介紹了IOS中UIWebView的使用詳解,涉及到初始化與三種加載方式,一些常用的屬性和變量及ios7中的一些新特征,本文介紹的非常詳細,感興趣的朋友一起學習吧
    2016-02-02
  • iOS獲取當前連接的WiFi以及IP地址

    iOS獲取當前連接的WiFi以及IP地址

    本文主要介紹了iOS獲取當前連接的WiFi以及IP地址方法的核心代碼。具有很好的參考價值,下面跟著小編一起來看下吧
    2017-03-03
  • iOS中獲取系統(tǒng)相冊中的圖片實例

    iOS中獲取系統(tǒng)相冊中的圖片實例

    這篇文章主要介紹了iOS中獲取系統(tǒng)相冊中的圖片實例,具有一定的參考價值沒有需要的朋友可以了解一下。
    2016-11-11
  • 利用iOS繪制圖片生成隨機驗證碼示例代碼

    利用iOS繪制圖片生成隨機驗證碼示例代碼

    驗證碼的功能一般是防止使用程序惡意注冊、暴力破解或批量發(fā)帖而設置的。所謂驗證碼,就是將一串隨機產(chǎn)生的數(shù)字或符號,生成一幅圖片,圖片里加上一些干擾象素(防止OCR),圖片驗證碼相信大家都見到過,這篇文章用示例代碼給大家介紹iOS繪制圖片生成隨機驗證碼的方法。
    2016-11-11
  • iOS tabview如何添加字母索引

    iOS tabview如何添加字母索引

    這篇文章主要為大家詳細介紹了iOS tabview如何添加字母索引,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • 怎樣優(yōu)化今日頭條IOS安裝包

    怎樣優(yōu)化今日頭條IOS安裝包

    這篇文章主要介紹了怎樣優(yōu)化今日頭條IOS安裝包,對IOS優(yōu)化感興趣的同學,可以參考下
    2021-04-04
  • IOS上iframe的滾動條失效的解決辦法

    IOS上iframe的滾動條失效的解決辦法

    這篇文章主要為大家詳細介紹了IOS上iframe的滾動條失效的解決辦法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • ios用AFN進行文件上傳的示例代碼

    ios用AFN進行文件上傳的示例代碼

    本篇文章主要介紹了ios用AFN進行文件上傳的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • 詳解Obejective-C中將JSON數(shù)據(jù)轉(zhuǎn)為模型的方法

    詳解Obejective-C中將JSON數(shù)據(jù)轉(zhuǎn)為模型的方法

    這篇文章主要介紹了Obejective-C中JSON數(shù)據(jù)轉(zhuǎn)為模型的方法,同時介紹了使用jastor庫的方法,需要的朋友可以參考下
    2016-03-03

最新評論