亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

iOS中valueForKeyPath的常用方法法示例

 更新時間:2018年07月01日 08:40:16   作者:逍遙晨旭  
這篇文章主要給大家介紹了關(guān)于iOS中valueForKeyPath的常用方法法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

前言

可能很多人對-(nullableid)valueForKeyPath:(NSString*)keyPath;這個方法不是很理解,實際上,這可以擴展到KVC中的高級用法上去。該方法非常強大。下面就來給大家詳細介紹iOS中valueForKeyPath的常用方法,話不多說了,來一起看看詳細的介紹吧

valueForKeyPath的常用方法

1、valueForKeyPath可以獲取數(shù)組中的最小值、最大值、平均值、求和。代碼如下:

NSArray *array = @[@10, @23, @43, @54, @7, @17, @5];

+ (NSString *)caculateArray:(NSArray *)array
{
 CGFloat sum = [[array valueForKeyPath:@"@sum.floatValue"] floatValue];
 CGFloat avg = [[array valueForKeyPath:@"@avg.floatValue"] floatValue];
 CGFloat max =[[array valueForKeyPath:@"@max.floatValue"] floatValue];
 CGFloat min =[[array valueForKeyPath:@"@min.floatValue"] floatValue];
 NSLog(@"%fn%fn%fn%f",sum,avg,max,min);
 return [NSString stringWithFormat:@"%f",sum];
}

2、valueForKeyPath可以獲取數(shù)組中相同key的元素

如下所示:

NSArray *arr = @[@{@"city":@"beijing",@"person":@{@"name":@"zhangsan"}},@{@"city":@"chengdu"}];

[arr valueForKeyPath:@"city"] 可以獲取到city數(shù)組 @[@"beijing",@"chengdu"]

3、valueForKeyPath 可以使用. 來一層一層向下索引,當(dāng)多個字典層級時,取子層級中的屬性就非常簡單了

NSDictionary *dict1 = @{@"dic1":@{@"dic2":@{@"name":@"lisi",@"info":@{@"age":@"12"}}}};

id res = [dict1 valueForKeyPath:@"[dict1.dict2.name](http://dict1.dict2.name/)"];

4、刪除重復(fù)的數(shù)據(jù)

NSArray *array = @[@"qq", @"wechat", @"qq", @"msn", @"wechat"];
[array valueForKeyPath:@"@distinctUnionOfObjects.self"];

5、嵌套使用(先刪除對應(yīng)值的重復(fù)數(shù)據(jù)再取值)

NSArray *array = @[@{@"name" : @"xiaoming",
     @"code" : @1},
     @{@"name": @"judy",
     @"code" : @2},
     @{@"name": @"judy",
     @"code" : @3},
     @{@"name": @"xiaohua",
     @"code" : @4}];
[array valueForKeyPath:@"@distinctUnionOfObjects.name"];

6、改變 UITextfield 的 placeholder 的顏色

[addressTextField setValue:[UIColor redColor] forKeyPath:@”_placeholderLabel.textColor”];

比起重寫 - (void)drawPlaceholderInRect:(CGRect)rect; 要方便太多!

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • iOS系統(tǒng)的底層通知框架庫示例詳解

    iOS系統(tǒng)的底層通知框架庫示例詳解

    這篇文章主要給大家介紹了關(guān)于iOS系統(tǒng)的底層通知框架庫的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對各位iOS開發(fā)者們具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • IOS xib布局小技巧-邊框設(shè)置

    IOS xib布局小技巧-邊框設(shè)置

    這篇文章主要介紹了IOS xib布局小技巧-邊框設(shè)置的相關(guān)資料,需要的朋友可以參考下
    2016-12-12
  • iOS評分(評價)星星圖打分功能

    iOS評分(評價)星星圖打分功能

    這篇文章主要介紹了iOS評分(評價)星星圖打分功能,評分視圖分為展示和評分兩種,具體詳情大家可以通過本文詳細學(xué)習(xí)
    2016-11-11
  • 配置iOS?16?屏幕旋轉(zhuǎn)適配實例詳解

    配置iOS?16?屏幕旋轉(zhuǎn)適配實例詳解

    這篇文章主要為大家介紹了配置iOS?16?屏幕旋轉(zhuǎn)適配實例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-09-09
  • IOS手勢操作(拖動、捏合、旋轉(zhuǎn)、點按、長按、輕掃、自定義)

    IOS手勢操作(拖動、捏合、旋轉(zhuǎn)、點按、長按、輕掃、自定義)

    這篇文章主要介紹了IOS手勢操作(拖動、捏合、旋轉(zhuǎn)、點按、長按、輕掃、自定義),需要的朋友可以參考下
    2015-07-07
  • 淺談iOS應(yīng)用中的相關(guān)正則及驗證

    淺談iOS應(yīng)用中的相關(guān)正則及驗證

    下面小編就為大家?guī)硪黄獪\談iOS應(yīng)用中的相關(guān)正則及驗證。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04
  • iOS中你需要的彈窗效果總結(jié)大全

    iOS中你需要的彈窗效果總結(jié)大全

    彈窗是app中常見控件之一,一般由于項目需求,我們很少能直接使用系統(tǒng)提供的彈窗,這個時候就需要我們根據(jù)產(chǎn)品需求封裝自定義彈窗了。下面這篇文章主要給大家介紹了關(guān)于iOS中你需要的彈窗效果的相關(guān)資料,需要的朋友可以參考下
    2018-09-09
  • iOS 自定義返回按鈕保留系統(tǒng)滑動返回功能

    iOS 自定義返回按鈕保留系統(tǒng)滑動返回功能

    這篇文章主要介紹了iOS 自定義返回按鈕,保留系統(tǒng)滑動返回功能,實現(xiàn)方法非常簡單,具有參考借鑒價值,需要的朋友參考下吧
    2017-01-01
  • iOS CoreAnimation 圖層幾何學(xué)

    iOS CoreAnimation 圖層幾何學(xué)

    本文主要介紹了iOS CoreAnimation圖層幾何學(xué),圖層幾何所講主要是有關(guān)圖層的位置,尺寸等幾何類屬性。具有很好的參考價值。下面跟著小編一起來看下吧
    2017-03-03
  • 簡單談?wù)凜ore Animation 動畫效果

    簡單談?wù)凜ore Animation 動畫效果

    下面小編就為大家?guī)硪黄唵握務(wù)凜ore Animation 動畫效果。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06

最新評論