原创 iOS開發筆記>> MVVM和MVC設計模式的分析

MVC:  Model, View, Controler  view (UI 層): view 只負責展示從 controller 接受到數據. 也就是把 model 轉化成 UI model (數據層): 不能直接與 controll

原创 閉包, 代理和通知的區別?

1. 閉包: 就是block, 在swift中叫做閉包 block是iOS4.0+ 和Mac OS X10.6+ 引進的C語言的擴展, 用來實現匿名函數的特徵 blocks語法塊代碼以閉包的形式將各種內容進行傳遞, 可以是代碼, 可以是

原创 iOS開發筆記>> 怎麼解決cell緩存池滿的問題

這個問題挺有意思 iOS中不存在緩存池滿的情況, 因爲通常iOS開發中對象都是在需要的時候才創建, iOS程序員有一句常說的話就是懶加載, 懶加載想必就不用多說了吧. 還有在UITableView中一般只會創建剛開始出現在屏幕中的cell

原创 iOS開發筆記>> 如何渲染自定義格式字符串的UILabel

通過NSMutableAttributedString設置, 代碼如下 - (void)viewDidLoad { [super viewDidLoad]; NSMutableAttribute

原创 iOS開發筆記>> layoutsubViews什麼時候調用

layoutsubViews在以下情況下會被調用 1. init時不會調用layoutsubViews 2. 添加子控件時會調用layoutsubViews 3. 修改view的frame時會調用layoutsubViews 4. 滾動U

原创 原生絲滑的NavigationBar

CNanNavigationBar地址效果主要屬性全局設置UINavigationBar屬性使用只需要 喜歡的話給個 star, 如有錯誤歡迎討論, 📮[email protected] 地址 https://github.com/

原创 iOS開發筆記>> Core Animation(核心動畫)

Core Animation 是直接作用在 CALayer上的(並非 UIview 上)非常強大的跨 Mac OS X 和 iOS 平臺的動畫處理 API, Core Animation 的動畫執行過程都是在後臺操作的, 不會阻塞主線程.

原创 iOS開發筆記>> Quartz2D簡單介紹

1. 什麼是Quartz2D Quartz2D是一個二維繪圖引擎, 同時支持iOS和Mac系統 Quartz2D能完成的工作: 繪製圖形: 線條, 三角形, 矩形, 圓, 弧等 繪製文字 繪製, 生成圖片(圖像) 讀取, 生成PDF 截圖

原创 swift的簡單介紹!

簡介:  swift語言由蘋果公司在2014年推出, 用來撰寫OS X 和 iOS應用程序, 2014年在Apple WWDC發佈 歷史:  2014年7月, 蘋果開發者工具部門總監"克里斯·拉特納"開始着手swift編寫語言的設計,

原创 控制器View的生命週期及相關函數是什麼?你在開發中是如何用的?

1. 首先判斷控制器是否有視圖, 如果沒有就調用loadView方法創建: 在此方法中可以通過storyBoard或者代碼創建 2. 隨後調用viewDidLoad, 進一步對視圖進行初始化操作, 程序運行只會調用一次.     此時纔

原创 約束動畫如何實現?(swift)

約束動畫需要view調用一下layoutIfNeeded纔可以, 直接上代碼 // MARK: - 彈簧動畫 private func settingAnimation() { // 更

原创 iOS開發筆記>> weak和unowned的介紹

使用weak和unowned關鍵字可以避免所謂的循環引用 weak相當於OC裏面的weak, iOS5.0之後推出 weak, 當創建的對象銷燬之後, 指針會指向nil, 比較安全 unowned相當於OC裏面的assign, iOS

原创 iOS開發筆記>> 代理模式是什麼?

代理模式就是我們經常說的代理設計模式, 也就是代理, 這也是iOS中一種消息傳遞的方式, 也可以通過這種方式來傳遞一些參數.  代理是一種通用的設計模式, 由代理對象, 委託者, 協議三部分組成, 有特定的語法來實現代理模式, OC語言

原创 iOS開發筆記>> 設置scrollView的contentSize能在viewDidLoad裏設置麼,爲什麼?

所有事情都是相對而言的, 是可以設置的. 因爲在ViewDidLoad中view剛剛創建, 可能並不是真正的frame, 所以在ViewDidLoad中設置scrollView的contentSize不太好. 

原创 iOS開發筆記>> UIButton與UITableView的層級結構

1. 繼承結構 UIButton -> UIControl -> UIView -> UIResponder -> NSObject UITableView -> UIScrollView -> UIView -> UIResponder