Runtime ----運(yùn)行時(shí)

①.私有成員變量

+ (void)initialize {
    
    //使用 runtime 獲取某個(gè)類內(nèi)部影藏的成員變量
    //首先需要導(dǎo)入庫(kù) <objc/runtime.h>
    unsigned int count = 0;
   
   //拷貝出所有的成員變量列表
    Ivar *ivars = class_copyIvarList([UITextField class], &count);
    
    for (int i = 0; i < count; i++) {
        
        //取出成員變量
        Ivar ivar = *(ivars + i);
        
        //打印成員變量
        NSLog(@"%s",ivar_getName(ivar));
    } 
   
    //釋放
    free(ivars);  
}

②.獲取屬性

+ (void)initialize {
    
    //使用 runtime 獲取某個(gè)類內(nèi)部影藏的成員變量
    //首先需要導(dǎo)入庫(kù) <objc/runtime.h>
    unsigned int count = 0;
   
   //拷貝出所有的屬性
    objc_property_t *properties = class_copyPropertyList([UITextField class], &count);
    
    //遍歷屬性
    for (int i = 0; i < count; i++) {
        
        //取出屬性
        objc_property_t property = properties[i];
        
        //打印屬性名字及屬性的類型
        NSLog(@"%s---------%s",property_getName(property),property_getAttributes(property));
    } 
   
    //釋放
    free(properties);  
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容