在一年的oc開發過程中,終於有點封裝的思想了。看到最近swift火的一塌糊塗 就沒事研究一下。看了幾篇開源專案,慢慢的似乎摸通了一些門道。在物件導向語言中封裝這個東西。又不得不重新 理解。
在view中要對width進行賦值要這樣view.frame.size.width
, 每次這麼長很煩 你可以封裝:extension uiview
get}
var zz_width:cgfloat
get}
}這時候你呼叫的時候 只需要view.zz_width = ***
再比如說,ios中的彈框**比較冗長,我們也可以進行封裝,因為現在的彈框要用到present 必須拿到當前的viewcontroller
//mark: -得到當前正在顯示的vc
func getcurrentvc()->uiviewcontroller?}}
let fromview = window?.subviews[0]
iflet nextrespnder = fromview?.nextresponder()else
}return result
}
一般彈框乙個或者兩個按鈕
你可以這樣封裝
import
uikit
class
zzalert
dispatch_async(dispatch_get_main_queue(), )
alertcontroller.addaction(settingsaction)
}vc.presentviewcontroller(alertcontroller, animated: true, completion: nil)})}
static
func
showalert
(meg:string)
}
這時候 不管哪個頁面需要彈框的時候 就不用那個冗長的**了,只需要簡單的這樣
//乙個按鈕的
zzalert.showalert("這是個提示")
//兩個按鈕的
zzalert.showalert("兩個按鈕的提示", btn1: "取消", btn2: "確定")
這樣是不是感覺**就很清爽了 swift簡單學習之字典
字典是一種儲存相同型別多重資料的儲存器。每個值 value 都關聯獨特的鍵 key 鍵作為字典中的這個值資料的識別符號。和陣列中的資料項不同,字典中的資料項並沒有具體順序。我們在需要通過識別符號 鍵 訪問資料的時候使用字典 1 建立乙個字典 vardic dictionary string stri...
swift簡單學習之單例
class caibi dispatch once static.onetaken return static.instance 在網上查詢了資料之後發現,呵呵 了 彩筆簡版 class caibi return sta.insta 精簡版 class theoneandonlykraken2 cl...
Swift之網路請求框架封裝
該篇文章內容大致都是說明內容,無 模組 在專案開發過程中,經常會使用到第三方的框架,最多的無非是網路請求框架 afn asi 還有使用swift寫的alamofire框架 如果將這些第三方框架的請求放置在controller中,在更換第三方框架時,整個框架都將在報錯。所以在開發過程中,要對第三方框架...