原创 iOS開發如何在一個透明視圖上添加不透明的子控件

相信很多同學都會遇到過這個問題, 當我們彈出一個半透明的遮蓋層時, 又想在遮蓋層上加一些子視圖, 這個時候如果你的遮蓋層設置了alpha屬性,  你會驚訝的發現, 加載遮蓋層上的所有子控件都是透明瞭,  錯誤做法如下: view.bac

原创 Socket通訊原理(基礎)

1. 網絡通訊三要素 IP地址(主機名) 網絡中設備的標示不易記憶,可以用主機名本地迴環地址:127.0.0.1 主機名:localhost 每臺計算機都有一個 127.0.0.1如果 127.0.0.1 ping 不通,說明網卡不工作

原创 AssetsLibrary框架簡單介紹

該框架下有幾個類,ALAssetsLibrary,ALAssetsGroup,ALAsset,ALAssetsFilter,ALAssetRepresentation。 ALAssetsLibrary類 ALAssetsLibra

原创 CocoaPods和git一起使用的問題

很多時候, 由於項目中用到的第三方框架較多, 如果每個框架都手動管理的話, 一般會造成,git服務器中項目過大, 最終導致的問題是當代碼管理庫, 就會省去第三方sdk的備份時間, 而且, 在push時只需要push管理文件就行, 節省很多

原创 解決Xcode 11 / iOS 13 的坑

Xcode 運行不了模擬器和真機 這個問題在升級Xcode 10的時候其實已經解決過一次, 根本原因就是Xcode10 開始蘋果刪除了幾個C++ 運行庫 報錯如下: dyld: Library not loaded: /usr/l

原创 Masonry框架源碼分析

相信大多數iOS開發者對Masonry框架並不陌生 , 本文是筆者通讀Masonry的代碼之後的一篇總結, 也希望可以幫助大家更好的理解該框架. 怎奈筆者才疏學淺, 如有遺漏或錯誤也歡迎大家評論區指出, 大家一起進步! iOS佈局

原创 Autorelease自動釋放池的使用

使用ARC開發,只是在編譯時,編譯器會根據代碼結構自動添加了retain、release和autorelease.MRC內存管理原則:誰申請,誰釋放 遇到alloc/copy/retain 都需要添加release或autorelease

原创 舊款Mac開啓隨航(sideCar)功能

看到這個標題, 不得不吐槽蘋果, 命名軟硬件都可以支持, 但是故意讓舊設備不支持這個功能, 真是雞賊, 吐槽完畢! 本文參考博客: http://dev.zeppel.eu/luca/SidecarCorePatch, 裏面是英

原创 iOS開發中常見的單例類

UIApplication,  NSUserDefault,  NSNotificationCenter,    NSURLSession,   NSFileManager , NSURLCache 點贊 收藏 分

原创 iOS面試題整理(上) 仔細研讀受益匪淺

1. 風格糾錯題 修改完的代碼: 修改方法有很多種,現給出一種做示例: // .h文件 // http://weibo.com/luohanchenyilong/ // https://github.com/ChenYilon

原创 launchOptions的key

  - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions當應用程序啓動時

原创 iOS面試題整理(下) 仔細研讀受益匪淺

21. 下面的代碼輸出什麼? @implementation Son : Father - (id)init { self = [super init]; if (self)

原创 Block爲什麼用copy修飾

默認情況下,block是存檔在棧中,可能被隨時回收,通過copy操作可以使其在堆中保留一份, 相當於一直強引用着, 因此如果block中用到self時, 需要將其弱化, 通過__weak或者__unsafe_unretained.  以下

原创 Runtime運行時用法1------獲取類屬性列表

提起Runtime運行時很多初學者會望而卻步, 但是仔細想想, 我們要讀懂別人框架的實現原理, 這些東西還是需要去學習了,  正所謂, 怕什麼什麼就是你的缺點, 面對我們知識層面的不足, 我們一定要勇敢地去克服. 好了扯淡部分結束, 進入

原创 Charles網絡抓包工具使用教程

1. 前言: Charles是一款抓包修改工具,相比起burp,charles具有界面簡單直觀,易於上手,數據請求控制容易,修改簡單,抓取數據的開始暫停方便等等優勢!作爲程序員, 這個工具的使用還是必須,  廢話不多說,  來點實在的