zoukankan      html  css  js  c++  java
  • 打印NSLog分类 Foundation+Log.m

    #import <Foundation/Foundation.h>

    #import <UIKit/UIKit.h>

    @implementation UIView(Log)

    + (NSString *)searchAllSubviews:(UIView *)superview

    {

        NSMutableString *xml = [NSMutableString string];

        

        NSString *class = NSStringFromClass(superview.class);

        class = [class stringByReplacingOccurrencesOfString:@"_" withString:@""];

        [xml appendFormat:@"<%@ frame="%@"> ", class,NSStringFromCGRect(superview.frame)];

        for (UIView *childView in superview.subviews) {

            NSString *subviewXml = [self searchAllSubviews:childView];

            [xml appendString:subviewXml];

        }

        [xml appendFormat:@"</%@> ", class];

        return xml;

    }

    - (NSString *)description

    {

        return [UIView searchAllSubviews:self];

    }

    @end

    @implementation NSDictionary (Log)

    - (NSString *)descriptionWithLocale:(id)locale

    {

        NSMutableString *str = [NSMutableString string];

        

        [str appendString:@"{ "];

        

        // 遍历字典的所有键值对

        [self enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {

            [str appendFormat:@" %@ = %@, ", key, obj];

        }];

        

        [str appendString:@"}"];

        

        // 查出最后一个,的范围

        NSRange range = [str rangeOfString:@"," options:NSBackwardsSearch];

        if (range.length) {

            // 删掉最后一个,

            [str deleteCharactersInRange:range];

        }

        

        return str;

    }

    @end

    @implementation NSArray (Log)

    - (NSString *)descriptionWithLocale:(id)locale

    {

        NSMutableString *str = [NSMutableString string];

        

        [str appendString:@"[ "];

        

        // 遍历数组的所有元素

        [self enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {

            [str appendFormat:@"%@, ", obj];

        }];

        

        [str appendString:@"]"];

        

        // 查出最后一个,的范围

        NSRange range = [str rangeOfString:@"," options:NSBackwardsSearch];

        if (range.length) {

            // 删掉最后一个,

            [str deleteCharactersInRange:range];

        }

        

        return str;

    }

    @end

  • 相关阅读:
    迷宫寻宝(自编简单版)
    推荐一个免费翻译接口
    nyoj 82
    poj 3984
    Suffix Tree(后缀树)
    python turtle模块绘图
    python continue语句
    python break语句
    pycharm永久破解激活码
    python while死循环
  • 原文地址:https://www.cnblogs.com/Hakim/p/5262324.html
Copyright © 2011-2022 走看看