3、IOS常用方法记录(方便复习) 和 生僻方法抽取到代码块里或者方法分类里(方便使用)

----------------------------------------------------------------------------------------------------------------------------------

常用方法

------

-------

-----

字符串替换

NSString *html = [body stringByReplacingOccurrencesOfString:img[@"ref"] withString:imgHTML];

 ------

NSUInteger loc = [url rangeOfString:@"baidu"].location;

默认返回的rangeOfString返回值为 range  如果没有找到就返回 {NSNotFound,0}   NSNotFound为-1

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
    // 如果在path中找不到@“baidu”这个字符串
    //    [path rangeOfString:@"baidu"].length == 0;
    //    [path rangeOfString:@"baidu"].location == NSNotFound
    
    // URL格式:协议头://主机名/路径
    // request.URL.path : 获得的仅仅是主机名(域名)后面的路径
    // request.URL.absoluteString : 获得的是一个完整的URL字符串
    
    // 1.获得完整的url字符串
    NSString *url = request.URL.absoluteString;
    NSUInteger loc = [url rangeOfString:@"baidu"].location;
    
    // 2.找到baidu字符串,返回NO
    if (loc != NSNotFound) { // 能找到
        return NO; // 禁止加载
    }
    
    // 3.如果没有找到,返回YES
    return YES;
    
//    return loc == NSNotFound ? YES : NO;
//    return loc == NSNotFound;
}

 

-

-------

获取文件类型 文件MIMEType

 

---------

或者

--------

 [str writeToFile:@"/Users/apple/Desktop/ios6.xml" atomically:YES];

 -

-

 判断点在不在Rect里

-

数组各个元素 遍历执行方法

[arr makeObjectsPerformSelector:@selector(setSelected:) withObject:@(NO)];

-

清空Point  默认CGPoint 值为CGPointZero;

-

比较2各点是否相等

 -

字符串追加

[str appendFormat:@"%d", btn.tag ];

字符串方法  NSString




-

 

结构体转对象

 对象转Point类型  (结构体类型)

 

 

dispatch_after 选择-GCD 主线程延迟2秒后执行

 

7、设置所有当前UINavigationBar的对象的颜色

//For example, to modify the bar tint color for all UINavigationBar instances:
[[UINavigationBar appearance] setBarTintColor:myColor];

[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"NavBar"] forBarMetrics:UIBarMetricsDefault];

 

------

retina数值为2   和非retina屏幕的数值1

设置frame  CGAffineTransForm 动画取消这个view的autoLayout

 -----

字符串变类

Class class = NSClassFromString(@"UITabBarButton");
        if ([child isKindOfClass:class]) {

 

----------------------------------------------------------------------------------------------------------------------------------

----------------------------------------------------------------------------------------------------------------------------------

生僻方法

1、图片拉伸

中间一小块开始往外拉伸

 

 -------

---------

 字符串日期转换

 

/**
 1.今年
     1> 今天
     * 1分内: 刚刚
     * 1分~59分内:xx分钟前
     * 大于60分钟:xx小时前
     
     2> 昨天
     * 昨天 xx:xx
     
     3> 其他
     * xx-xx xx:xx
 
 2.非今年
 1> xxxx-xx-xx xx:xx
 */
- (NSString *)created_at
{
    NSDateFormatter *fmt = [[NSDateFormatter alloc] init];
    // 如果是真机调试,转换这种欧美时间,需要设置locale
    fmt.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
    
    // 设置日期格式(声明字符串里面每个数字和单词的含义)
    // E:星期几
    // M:月份
    // d:几号(这个月的第几天)
    // H:24小时制的小时
    // m:分钟
    // s:秒
    // y:年
    fmt.dateFormat = @"EEE MMM dd HH:mm:ss Z yyyy";
//    _created_at = @"Tue Sep 30 17:06:25 +0800 2014";
    
    // 微博的创建日期
    NSDate *createDate = [fmt dateFromString:_created_at];
    // 当前时间
    NSDate *now = [NSDate date];
    
    // 日历对象(方便比较两个日期之间的差距)
    NSCalendar *calendar = [NSCalendar currentCalendar];
    // NSCalendarUnit枚举代表想获得哪些差值
    NSCalendarUnit unit = NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitDay | NSCalendarUnitHour | NSCalendarUnitMinute | NSCalendarUnitSecond;
    // 计算两个日期之间的差值
    NSDateComponents *cmps = [calendar components:unit fromDate:createDate toDate:now options:0];
    
    if ([createDate isThisYear]) { // 今年
        if ([createDate isYesterday]) { // 昨天
            fmt.dateFormat = @"昨天 HH:mm";
            return [fmt stringFromDate:createDate];
        } else if ([createDate isToday]) { // 今天
            if (cmps.hour >= 1) {
                return [NSString stringWithFormat:@"%d小时前", cmps.hour];
            } else if (cmps.minute >= 1) {
                return [NSString stringWithFormat:@"%d分钟前", cmps.minute];
            } else {
                return @"刚刚";
            }
        } else { // 今年的其他日子
            fmt.dateFormat = @"MM-dd HH:mm";
            return [fmt stringFromDate:createDate];
        }
    } else { // 非今年
        fmt.dateFormat = @"yyyy-MM-dd HH:mm";
        return [fmt stringFromDate:createDate];
    }
}

/*
 if ([self isThisYear:createDate]) { // 今年
 if ([self isYesterday:createDate]) { // 昨天
 fmt.dateFormat = @"昨天 HH:mm";
 return [fmt stringFromDate:createDate];
 } else if ([self isToday:createDate]) { // 今天
 if (cmps.hour >= 1) {
 return [NSString stringWithFormat:@"%d小时前", cmps.hour];
 } else if (cmps.minute >= 1) {
 return [NSString stringWithFormat:@"%d分钟前", cmps.minute];
 } else {
 return @"刚刚";
 }
 } else { // 今年的其他日子
 fmt.dateFormat = @"MM-dd HH:mm";
 return [fmt stringFromDate:createDate];
 }
 } else { // 非今年
 fmt.dateFormat = @"yyyy-MM-dd HH:mm";
 return [fmt stringFromDate:createDate];
 }
 */

 

posted @ 2016-03-01 10:15  海龙王来了  阅读(160)  评论(0)    收藏  举报
友情链接:废钢破碎机  带式压滤机