iOS 隨筆

1、hasSuffix 和 hasPrefix

  • hasSuffix:(nonnull NSString *)返回一個布爾值表示字符串是否以指定的后綴結(jié)束。
    如果一致返回true,如果不一致返回false
  • hasPrefix:(nonnull NSString *)返回一個布爾值表示字符串是否以指定的前綴開始。
    如果一致返回true,如果不一致返回false

例如:

// 表示 url 是否是以 http:// 為請求頭的開始的,如果是,則返回 true
BOOL openURL = [url hasPrefix:@"http://"];

2、respondstoselector 的作用

respondsToSelector用來判斷某一個方法時候?qū)崿F(xiàn)(下面的代碼意思:如果baseAPIdidStartRequest這個方法實現(xiàn)了,那么就去調(diào)用,防止出現(xiàn)異常)

if ([self.delegate respondsToSelector:@selector(baseAPIdidStartRequest:)]) {
    [self.delegate baseAPIdidStartRequest:self];
}

3、isKindOfClass 和 isMemberOfClass

  • isKindOfClass:__unsafe_unretained Class用來判斷時候是某個類或其子類的實例(成員)
  • isMemberOfClass:__unsafe_unretained Class用來判斷是否是某個類的實例(成員)
    例如:
- (void)testIsKindOfClass {
    
    Class1 *c1 = [Class1 new];
    
    if ([c1 isKindOfClass: [NSObject class]]) {
        
        NSLog(@"c1 is a kind of NSObject.");
    }
    
    if ([c1 isMemberOfClass:[Class1 class]]) {
        
        NSLog(@"c1 is Member of Class1 !");
    }
    
    if (![c1 isMemberOfClass:[NSObject class]]) {
        
        NSLog(@"c1 is't Member of NSObject !");
    }
}

打印結(jié)果:

2018-08-13 16:05:47.408663+0800 WebView[2407:1903238] c1 is a kind of NSObject.
2018-08-13 16:05:47.408772+0800 WebView[2407:1903238] c1 is Member of Class1 !
2018-08-13 16:05:47.408806+0800 WebView[2407:1903238] c1 is't Member of NSObject !

4、iOS訪問相冊、相機(jī)等服務(wù)權(quán)限設(shè)置

在更新iOS11之后,訪問通訊錄、相冊等需要在info.plist中加入訪問描述,不然如果項目涉及到這些權(quán)限的地方就會直接crash掉,報錯信息如下:


打開info.plist添加權(quán)限描述許可鍵值對:

權(quán)限.png

5、php 魔術(shù)常量,在iOS同樣可以使用

// 函數(shù)名
NSLog(@"%s", __FUNCTION__);
// 程序運(yùn)行時的時間
NSLog(@"%s", __TIME__);
// 當(dāng)前代碼所在的行數(shù)
NSLog(@"%d", __LINE__);
// 當(dāng)前文件的名字(及位置?)
NSLog(@"%s", __FILE__);

輸出結(jié)果為

2018-08-19 19:06:26.586 demo[4783:196913] -[MainViewController viewDidLoad]
2018-08-19 19:06:26.586 demo[4783:196913] 19:06:19
2018-08-19 19:06:26.586 demo[4783:196913] 40
2018-08-19 19:06:26.586 demo[4783:196913] /Users/GrandSu/Desktop/demo/demo/Controller/MainViewController.m
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

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