本文分兩部分,第一部分是介紹常用的屬性包裝器,第二步部分是自定義屬性包裝器 + 動態(tài)屬性分析 一、SwiftUI常用的屬性包裝器: @AppStorage: 全局生效(除Ap...
本文分兩部分,第一部分是介紹常用的屬性包裝器,第二步部分是自定義屬性包裝器 + 動態(tài)屬性分析 一、SwiftUI常用的屬性包裝器: @AppStorage: 全局生效(除Ap...
@小了白了小兔兔 我也一樣,MSHookFunction沒有效果,captionhook有效
免越獄iOS插件注入由deb文件得到dylib庫后,將dylib庫注入到二進制文件中,重新打包完成動態(tài)庫附帶的功能。 1. 獲得dylib文件 使用theos建立tweak工程后,hook住要改...
由deb文件得到dylib庫后,將dylib庫注入到二進制文件中,重新打包完成動態(tài)庫附帶的功能。 1. 獲得dylib文件 使用theos建立tweak工程后,hook住要改...
線程的調(diào)用就會有函數(shù)的調(diào)用,就會把調(diào)用地址壓入棧中,所以就可以從棧中獲取調(diào)用地址。 通過[NSThread callStackReturnAddresses],可以獲取線程的...
WKWebView不支持NSURLProtocol 前段時間總結(jié)過《WKWebView從入門到趟坑》,其中提到 NSURLProtocol 攔截支持和緩存的痛點。在 UIWe...
加@objc就可以了
@objc extension UIImageView {
func setLocalFaceImageAndFrame(aImage: UIImage, aFrame: CGRect) {
let layer = self.imageLayer()
layer.contents = aImage.cgImage
layer.frame = aFrame
}
}
swift的指針介紹,指針的常用函數(shù)和使用OC指針 在OC中的對象Object我們都是用的指針,像下面這些: 很顯然在OC中我們使用*來表示對象,其實是聲明指針,而且使用&符號來取地址,比如我們在使用C的數(shù)組時,可以...
OC指針 在OC中的對象Object我們都是用的指針,像下面這些: 很顯然在OC中我們使用*來表示對象,其實是聲明指針,而且使用&符號來取地址,比如我們在使用C的數(shù)組時,可以...
Array的介紹:When the destination array's element type is a nonclass type that bridges to a...
時間復雜度是一樣的,但是系統(tǒng)方法比題主的要快
Swift 算法實戰(zhàn)之路:數(shù)組,字符串,集合,與字典上次講解了基本的語法和一些Swift的小技巧。這期我們來看幾個最基本的數(shù)據(jù)結(jié)構(gòu):數(shù)組,字符串,集合和字典。 數(shù)組 數(shù)組是最基本的數(shù)據(jù)結(jié)構(gòu)。Swift中改變了以前Objecti...
一、關(guān)于圖片的兩種格式,PNG和JPEG 圖片文件被加載后必須要進行解碼,解碼過程是一個相當復雜的任務,需要消耗非常長的時間。解碼后的圖片將同樣使用相當大的內(nèi)存。 用于加載的...
@abs_ 結(jié)構(gòu)體里包含了block實現(xiàn)的函數(shù)指針
關(guān)于block(二)----為什么使用copy,為什么使用__block不知道大家使用block的時候有沒有想過: 為什么block賦值需要用copy? 對于全局block來說,就和全局常量一樣,copy就是引用,且沒有引用計數(shù)的增減,在app結(jié)...
實例變量(instance variable):由類定義的成員變量,OC中一般聲明在{ }內(nèi)。 屬性(property):編譯器自動將變量的set和get方法的合成,代碼中使...
不知道大家使用block的時候有沒有想過: 為什么block賦值需要用copy? 對于全局block來說,就和全局常量一樣,copy就是引用,且沒有引用計數(shù)的增減,在app結(jié)...
在iOS或者其他系統(tǒng)中,程序運行中的存儲根據(jù)功能分類,基本都有這幾個分類: 棧區(qū):用于存放臨時內(nèi)容,一般為局部變量,多為變量指針。 堆區(qū):存放可能需要保存時間長些的內(nèi)容,這里...
上面這段代碼輸出為: 我們知道oc存儲主要分成數(shù)據(jù)區(qū)、堆區(qū)和棧區(qū), __NSCFConstantString顯然是常量字符串,地址0x10c843820自然就是存儲在數(shù)據(jù)區(qū)。...
block 其實就是一個結(jié)構(gòu)體+函數(shù)指針,其賦值就是傳遞block對象(結(jié)構(gòu)體); 下面代碼我們將其轉(zhuǎn)為c的源碼,clang我用的是這段命令:clang -x objecti...
block本身是像對象一樣可以retain,和release,但是棧block和全局block這些操作都無效,只有堆block操作有效,雖然retainCount始終是1但是...