Swift--建立屬于自己的框架到上線App(再也不用擔心我的學習了)

本篇文章包含了開發一個App及發布的大部分內容,有了本篇文章,大家再也不用東奔西跑的去找資料了,這里面有開發App的完整資料及如何建立一個屬于自己的框架,這篇文章主要針對初學者,如果有寫的不好的地方,大家可以指出,希望和大家共同進步。?

先談下我對App的理解,無非就是發出數據請求,獲取后臺傳來的數據,然后體現在界面上。這樣也就是說我們我發送網絡的get或者是post請求,然后就是獲取到了數據,一般獲取到的數據有三種形式:1.json格式(其實在我眼里就只有這一種) 2.xml格式 3.字符串形式。獲得數據之后就是解析數據了,swift對于解析json數據也是非常簡單的,對于解析出來的數據,一般有兩種處理方式:1.使用本地數據持久化方式(通俗講也就是將數據存起來,存到手機上)。2.直接將數據顯示到界面上(不推薦,簡單的也可以這么做啦)。在我眼里,說白了,開發一個App其實就是在做上面重復的事情。下面就來詳細的講下如何來搭建屬于自己的框架。本篇是基于Xcode6.2,其實思路一樣

對于初學者來說,一般的網絡請求,json數據簡析這些使用開源框架就可以了

第一步.網絡請求框架 這里使用的是YYHRequest-Swift這個開源框架。下載地址:https://github.com/yayuhh/YYHRequest-Swift大家可以自行去下載。有了框架,申請數據就方便多了。簡單的get,post方式申請數據:

1.get方式(data是數據,對其處理就好了)


let request = YYHRequest(url: NSURL(string: "http://www.google.com/"))

request.loadWithCompletion {response, data, error in

if let actualError = error {

// handle error

} else if let actualResponse = response {

// handle success

}

}


2.post方式:


let request = YYHRequest(url: NSURL(string: "http://www.google.com/"))

request.method = "POST"

request.parameters["foo"] = "bar"

request.completionHandler = { response, data, error in

// request complete!

}

request.loadRequest()


這樣申請網絡數據就完成了,接下來就是解析數據了。

第二步.json數據解析框架 。SwiftyJSON這是一個使用極其普遍的開源框架,下載地址:https://github.com/lingoer/SwiftyJSON大家可以自行去下載,使用的話外面的文章實在是太多了,我就推薦一篇大家去看就OK了http://www.lxweimin.com/p/ae9a579905e0這里面已經寫出了使用方法,大家可以跟著里面的例子進行測試。

在這里插一下版本更新,蘋果公司是不允許直接更新app的,需要跳轉到App Store去自行下載,做出版本更新的思路就是:自己服務器上放含有最新版本號的json數據,通過網絡請求獲取json數據,解析json數據獲得最新版本號,與目前的版本號進行對比,判斷是否跳出提示更新的框,是的話就跳轉到App Store地址,因為自己寫篇幅就過長了,這里也給出參考的文章,在這里感謝曾給過幫助的朋友們!參考地址:http://www.lxweimin.com/p/6f22f06261f5

上面兩個框架就可以解決很多問題了,下面當然要講下怎么導入上面這兩個框架了,這里就簡述了,新建一個工程,比如Helloworld,然后將YYHRequest-Swift,SwiftyJSON中的.xcodeproj文件拉到項目中去,然后點擊自己的項目,這里是Helloworld,然后點擊General,然后往下拉,看到Embedded Binaries 下面有個加號,將這兩個框架添加進來就行了

第二種導入框架的方法,就是使用cocoapods,有篇文章寫得非常好,這里推薦下http://www.lxweimin.com/p/1f93e0fec8a5

到這里就認為是框架導入成功了。

第三步.界面的搭建,相信大家對基本的控件的使用應該沒什么問題吧,如果有問題的話,推薦去下載IOS開發指南這本書的源碼,然后怎么去對應上內容,怎么獲取PDF大家自己想辦法嘍,源碼下載地址:http://www.51work6.com/forum.php?mod=viewthread&tid=1159&extra=page%3D1這里面擁有所有基本控件簡單使用源碼,只要合理利用,會有相當大的作用的。

第四步,數據持久化。這里推薦http://www.lxweimin.com/p/7616cbd72845其實在剛才推薦的下載的源碼的第十一章ch11中講的非常清楚,Demo代碼也非常適用。目前我用的就是修改Demo代碼中的。

還有很中要的一點就是界面布局,這點非常重要。因為現在iphone的屏幕尺寸種類多了,目前還是推薦使用自動布局Auto Layout來對界面布局推薦一個非常好的學習地址,相信看完這篇文章,布局是一點問題都不會有了,寫得非常詳細https://lvwenhan.com/ios/430.html相信大家會有很大收獲的。

經過上面這些,框架基本是搭建起來了,下面就介紹一些開發一個App不可避免要用到的一些東西

1.IOS(swift)-scrollView(tableView) ·下拉刷新上拉加載

http://www.lxweimin.com/p/94b6d7287faf

2.動態啟動界面(有需要時用)

http://fromwiz.com/share/s/0i4C850y0AUf2VM_1t15ktzt2XPmI93U7QMr2rF2y40mYXtX

3.純代碼寫的tab bar

http://www.lxweimin.com/p/a9808d63408b

4.app的引導頁

http://www.lxweimin.com/p/024dd2d6e6e6

5.自定義tab bar 并帶有動畫

http://www.lxweimin.com/p/d487a87105e7

6.使用ShareSDK完成第三方分享功能

http://www.lxweimin.com/p/f95080d109a6

TableView是一個非常重要,比其他基本控件要復雜一點的控件,在上面下載的源碼的第六章完整的介紹了基本用法。

最后就只剩下App的發布了,之前我寫過一篇關于此類的文章,請大家移步http://www.lxweimin.com/p/2813abee7187

如果有寫的不對的地方,還請指出,我會及時修改。寫得不好的地方還請大家見諒,需要大家的支持。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,156評論 6 529
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 97,866評論 3 413
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 174,880評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,398評論 1 308
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,202評論 6 405
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 54,743評論 1 320
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 42,822評論 3 438
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 41,962評論 0 285
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,476評論 1 331
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,444評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,579評論 1 365
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,129評論 5 355
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 43,840評論 3 344
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,231評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,487評論 1 281
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,177評論 3 388
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,568評論 2 370

推薦閱讀更多精彩內容