本篇文章包含了開發(fā)一個App及發(fā)布的大部分內(nèi)容纷责,有了本篇文章吆寨,大家再也不用東奔西跑的去找資料了推姻,這里面有開發(fā)App的完整資料及如何建立一個屬于自己的框架窃款,這篇文章主要針對初學(xué)者课兄,如果有寫的不好的地方,大家可以指出晨继,希望和大家共同進(jìn)步烟阐。?
先談下我對App的理解,無非就是發(fā)出數(shù)據(jù)請求踱稍,獲取后臺傳來的數(shù)據(jù)曲饱,然后體現(xiàn)在界面上。這樣也就是說我們我發(fā)送網(wǎng)絡(luò)的get或者是post請求珠月,然后就是獲取到了數(shù)據(jù)扩淀,一般獲取到的數(shù)據(jù)有三種形式:1.json格式(其實(shí)在我眼里就只有這一種) 2.xml格式 3.字符串形式。獲得數(shù)據(jù)之后就是解析數(shù)據(jù)了啤挎,swift對于解析json數(shù)據(jù)也是非常簡單的驻谆,對于解析出來的數(shù)據(jù),一般有兩種處理方式:1.使用本地數(shù)據(jù)持久化方式(通俗講也就是將數(shù)據(jù)存起來庆聘,存到手機(jī)上)胜臊。2.直接將數(shù)據(jù)顯示到界面上(不推薦,簡單的也可以這么做啦)伙判。在我眼里象对,說白了,開發(fā)一個App其實(shí)就是在做上面重復(fù)的事情宴抚。下面就來詳細(xì)的講下如何來搭建屬于自己的框架勒魔。本篇是基于Xcode6.2甫煞,其實(shí)思路一樣
對于初學(xué)者來說,一般的網(wǎng)絡(luò)請求冠绢,json數(shù)據(jù)簡析這些使用開源框架就可以了
第一步.網(wǎng)絡(luò)請求框架 這里使用的是YYHRequest-Swift這個開源框架抚吠。下載地址:https://github.com/yayuhh/YYHRequest-Swift大家可以自行去下載。有了框架弟胀,申請數(shù)據(jù)就方便多了楷力。簡單的get,post方式申請數(shù)據(jù):
1.get方式(data是數(shù)據(jù)孵户,對其處理就好了)
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()
這樣申請網(wǎng)絡(luò)數(shù)據(jù)就完成了萧朝,接下來就是解析數(shù)據(jù)了。
第二步.json數(shù)據(jù)解析框架 夏哭。SwiftyJSON這是一個使用極其普遍的開源框架剪勿,下載地址:https://github.com/lingoer/SwiftyJSON大家可以自行去下載,使用的話外面的文章實(shí)在是太多了方庭,我就推薦一篇大家去看就OK了http://www.reibang.com/p/ae9a579905e0這里面已經(jīng)寫出了使用方法,大家可以跟著里面的例子進(jìn)行測試酱固。
在這里插一下版本更新械念,蘋果公司是不允許直接更新app的,需要跳轉(zhuǎn)到App Store去自行下載运悲,做出版本更新的思路就是:自己服務(wù)器上放含有最新版本號的json數(shù)據(jù)龄减,通過網(wǎng)絡(luò)請求獲取json數(shù)據(jù),解析json數(shù)據(jù)獲得最新版本號班眯,與目前的版本號進(jìn)行對比希停,判斷是否跳出提示更新的框,是的話就跳轉(zhuǎn)到App Store地址署隘,因?yàn)樽约簩懫瓦^長了宠能,這里也給出參考的文章,在這里感謝曾給過幫助的朋友們磁餐!參考地址:http://www.reibang.com/p/6f22f06261f5
上面兩個框架就可以解決很多問題了违崇,下面當(dāng)然要講下怎么導(dǎo)入上面這兩個框架了征绎,這里就簡述了匿值,新建一個工程搀绣,比如Helloworld征唬,然后將YYHRequest-Swift歼指,SwiftyJSON中的.xcodeproj文件拉到項(xiàng)目中去指孤,然后點(diǎn)擊自己的項(xiàng)目孵班,這里是Helloworld绝葡,然后點(diǎn)擊General鄙漏,然后往下拉嗤谚,看到Embedded Binaries 下面有個加號棺蛛,將這兩個框架添加進(jìn)來就行了
第二種導(dǎo)入框架的方法,就是使用cocoapods呵恢,有篇文章寫得非常好鞠值,這里推薦下http://www.reibang.com/p/1f93e0fec8a5
到這里就認(rèn)為是框架導(dǎo)入成功了。
第三步.界面的搭建渗钉,相信大家對基本的控件的使用應(yīng)該沒什么問題吧彤恶,如果有問題的話,推薦去下載IOS開發(fā)指南這本書的源碼鳄橘,然后怎么去對應(yīng)上內(nèi)容声离,怎么獲取PDF大家自己想辦法嘍,源碼下載地址:http://www.51work6.com/forum.php?mod=viewthread&tid=1159&extra=page%3D1這里面擁有所有基本控件簡單使用源碼瘫怜,只要合理利用术徊,會有相當(dāng)大的作用的。
第四步鲸湃,數(shù)據(jù)持久化赠涮。這里推薦http://www.reibang.com/p/7616cbd72845其實(shí)在剛才推薦的下載的源碼的第十一章ch11中講的非常清楚,Demo代碼也非常適用暗挑。目前我用的就是修改Demo代碼中的笋除。
還有很中要的一點(diǎn)就是界面布局,這點(diǎn)非常重要炸裆。因?yàn)楝F(xiàn)在iphone的屏幕尺寸種類多了垃它,目前還是推薦使用自動布局Auto Layout來對界面布局推薦一個非常好的學(xué)習(xí)地址,相信看完這篇文章烹看,布局是一點(diǎn)問題都不會有了国拇,寫得非常詳細(xì)https://lvwenhan.com/ios/430.html相信大家會有很大收獲的。
經(jīng)過上面這些惯殊,框架基本是搭建起來了酱吝,下面就介紹一些開發(fā)一個App不可避免要用到的一些東西
1.IOS(swift)-scrollView(tableView) ·下拉刷新上拉加載
http://www.reibang.com/p/94b6d7287faf
2.動態(tài)啟動界面(有需要時用)
http://fromwiz.com/share/s/0i4C850y0AUf2VM_1t15ktzt2XPmI93U7QMr2rF2y40mYXtX
3.純代碼寫的tab bar
http://www.reibang.com/p/a9808d63408b
4.app的引導(dǎo)頁
http://www.reibang.com/p/024dd2d6e6e6
5.自定義tab bar 并帶有動畫
http://www.reibang.com/p/d487a87105e7
6.使用ShareSDK完成第三方分享功能
http://www.reibang.com/p/f95080d109a6
TableView是一個非常重要,比其他基本控件要復(fù)雜一點(diǎn)的控件土思,在上面下載的源碼的第六章完整的介紹了基本用法掉瞳。
最后就只剩下App的發(fā)布了,之前我寫過一篇關(guān)于此類的文章浪漠,請大家移步http://www.reibang.com/p/2813abee7187
如果有寫的不對的地方陕习,還請指出,我會及時修改址愿。寫得不好的地方還請大家見諒该镣,需要大家的支持。