iOS 控件私有属性遍历

作者: CCSHCoder | 来源:发表于2016-06-23 19:08 被阅读492次

控件私有属性遍历主要利用OC的RunTIme机制
首先加入头文件

#import <objc/runtime.h>

写入代码

    unsigned int outCount = 0;
    Ivar *ivars = class_copyIvarList([UITextField class], &outCount);
    
    for (NSInteger i = 0; i < outCount; ++i) {
        // 遍历取出该类成员变量
        Ivar ivar = *(ivars + i);
        
        NSLog(@"\n name = %s  \n type = %s", ivar_getName(ivar),ivar_getTypeEncoding(ivar));
    }
    
    // 根据内存管理原则释放指针
    free(ivars);

通过KVC进行修改

    //拿到私有的属性forKey: 进行改变setValue:
//    [self.view setValue:<#(nullable id)#> forKey:<#(nonnull NSString *)#>];

相关文章

  • iOS 控件私有属性遍历

    控件私有属性遍历主要利用OC的RunTIme机制首先加入头文件 写入代码 通过KVC进行修改

  • iOS 13 UISearchBar 获取UITextField

    在iOS 13 之前都是通过 iOS 13 就直接废弃了 直接通过控件的私有属性获取控件方法 所以可以通过这种形式...

  • 获取控件私有属性并修改

    原理:利用runtime访问控件的私有属性,然后利用KVC修改私有属性

  • 利用runtime获取私有属性名及类型

    在iOS中没有绝对的私有属性,虽然没有办法直接访问私有属性,但是可以利用kvc,kvo间接访问私有属性。使用kvc...

  • iOS开发中的一些小技巧

    1、取出UISearchBar中的控件进行属性设置 类似的,按钮之类的控件也可以用KVC进行对私有属性赋值或者更改...

  • iOS 13适配

    iOS 13 适配 1. 私有属性KVC iOS不允许valueForKey、setValue: forKey ...

  • html中的link

    link rel = shortcut icon 的各种属性值 apple-touch-icon ios的私有属性

  • iOS13适配

    私有KVC iOS不允许valueForKey、setValue: forKey获取和设置私有属性,需要使用其它方...

  • IOS开发(三)高级控件

    IOS基础控件思维导图 三、高级控件 1、UITabBarController (1)常用属性 (2)常用方法 (...

  • iOS13的一些适配

    iOS13不允许 valueForKey、setValue: forKey 获取和设置私有属性 iOS13以前: ...

网友评论

本文标题:iOS 控件私有属性遍历

本文链接:https://www.haomeiwen.com/subject/grcodttx.html