原创 手勢滑動判斷上下左右

    moveDirection direction;//這個是個枚舉   - (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{     

原创 全局空指針的使用

1.使用老外寫的類別NullSafe直接將.m導入進工程即可。在運行時操作,將NSNull進行處理變成nil,因爲nil是安全的,可以向nil對象發送任何message而不會崩潰  2.如果網絡請求可以使用網絡請求庫自帶方法:removes

原创 網絡出現問題

在info.plist中添加<key>NSAppTransportSecurity</key><dict>    <key>NSAllowsArbitraryLoads</key>    <true/></dict>

原创 百度地圖釋放內存最佳答案

解決辦法是在- (void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated中加入了兩行代碼 [self.map removeFromSuperview]

原创 判斷聯網wifi

UIApplication *app = [UIApplication sharedApplication]; NSArray *children = [[[app valueForKeyPath:@"statusBar"]valueFor

原创 第一篇:GCD多線程的概念

1.什麼叫GCD? 簡單來說就是:Grand Central Dispatch的簡稱,中文翻譯就是:”牛逼的中樞調度器“                     這是純C語言,還提供了非常多強大的函數   2.GCD的相對優勢: (1)GC

原创 Swift和OC 混編

1.首先創建一個Swift工程 2.導入或者創建一個OC文件(.h和.m) 3.再創建一個橋連接文件 4.然後文件樣子爲 5.在橋接鏈接裏面導入頭文件 6.通過targets-》-》buildsetting 輸入bridging,然

原创 線程問題

1. 談談你對多線程開發的理解?iOS中有幾種實現多線程的方法,並說明每種方式有什麼特點? 答:使用多線程開發的好處: 1、使用線程可以把程序中佔據時間長的任務放到後臺去處理,如網絡數據的請求、圖片、視頻的下載 2、發揮多個處理器的優勢

原创 第一篇:線程間的通信

  1.線程間的通信:在一個進程中,線程往往不是獨立存在的,多個線程之間需要經常進行通信。 2.線程間通信的體現:    一個線程傳遞數據給另一個線程   在一個線程執行完特定任務後,轉到另一個線程繼續執行任務   3.線程間通信常用方法:

原创 md5 加密 swfit版

在swift工程中隨便建一個objective-c類,會提示你生成一個Bridging-Header,點YES,然後刪除剛纔建立的objective-c類,只留下[工程名]-Bridging-Header.h文件。在[工程名]-Bridgi

原创 解決了clang: error: linker command failed with exit code 1 (use -v to see invocation) 解決方法

1.”Build Settings”->”Enable Bitcode”設置爲NO  2.TARGETS -->  Build Settings --> Architectures --> Valid Architectures  做同樣的

原创 百度地圖清理 數據

如果你不是在同一個view中使用多個mapview的話 ,都可以採用先清理掉原來數據 再加載新數據的方式來實現清理 數據NSArray* array = [NSArray arrayWithArray:_mapView.annotation