說起來慚愧,從去年就想開始學(xué)習(xí)iOS的計(jì)劃一直沒有穩(wěn)步的推進(jìn),所以就準(zhǔn)備寫一個(gè)學(xué)習(xí)心得系列恭金,希望可以讓自己效率高一點(diǎn),作為一個(gè)本職Android開發(fā)者褂策,一直羨慕著iOS系統(tǒng)的生態(tài)環(huán)境横腿,兩個(gè)字--“規(guī)范”,而且自己有時(shí)做私活也需要有iOS-App開發(fā)(還是money)斤寂,這些種種都讓我對(duì)iOS開發(fā)起了興趣耿焊。這個(gè)系列,只基于Swift3語言遍搞,并且開發(fā)中的一些習(xí)慣罗侯,完全依照這Apple官方推薦去實(shí)踐,例如:盡量使用StoryBoard等等溪猿。本人也是iOS開發(fā)小白歇父,文中也避免不了一些大神看起來可笑的代碼,希望有人看到可以指出再愈,交流,互相進(jìn)步护戳。
----------------------------2016-10-13 15:23:20
既然新手翎冲,我就選定MVC模式開發(fā),(復(fù)雜的MVP媳荒,MVVM啥的抗悍,我不管,反正在iOS開發(fā)里面钳枕,我不會(huì)=稍ā!S愠础)
Model(模型類)用 簡單Class
View用SB(StoryBoard簡稱)和Xib
Controllers用UIViewController
嗯嗯衔沼,既然作為一個(gè)有一年開發(fā)經(jīng)驗(yàn)的Android開發(fā)“老鳥”,在開發(fā)之前昔瞧,對(duì)于基類的創(chuàng)建是必要的V敢稀!
Model自晰,Controllers都必須要有對(duì)應(yīng)的基類D!
ok3贶瘛搓劫!前期準(zhǔn)備都搞定了瞧哟,分別建立文件夾,如下圖:
來枪向,一步步干死這些我不知道的東西G诳!
第一個(gè)文件:AppDelegate
嗯嗯遣疯,繼承UIResponder這個(gè)我懂雄可,不過UIApplicationDelegate是什么鬼?辛好我英文還可以缠犀,Delegate-協(xié)議数苫,好了,協(xié)議辨液?我tm還是沒搞懂虐急,點(diǎn)進(jìn)去看源碼,哦哦哦滔迈,原來就是C++的純虛函數(shù)和java里面的接口嘛止吁!Apple公司就喜歡自己搞一套,其實(shí)不還是一個(gè)意思燎悍,差評(píng)敬惦。
UIResponder:
在iOS中UIResponder類是專門用來響應(yīng)用戶的操作處理各種事件的,包括觸摸事件(Touch Events)谈山、運(yùn)動(dòng)事件(Motion Events)俄删、遠(yuǎn)程控制事件(Remote Control Events,如插入耳機(jī)調(diào)節(jié)音量觸發(fā)的事件)。
UIApplicationDelegate:
APPDelegate是UIApplication的代理奏路,UIApplication相當(dāng)于Android開發(fā)中的Application畴椰,APPDelegate通過實(shí)現(xiàn)UIApplicationDelegate協(xié)議,復(fù)寫相應(yīng)的方法鸽粉,用來管理APP生命周期斜脂。
第二個(gè)文件:Assets.xcassets
放切圖的
第三個(gè)文件:LaunchScreen.storyboard
APP啟動(dòng)創(chuàng)建的第一個(gè)SB,也就是啟動(dòng)頁
第四個(gè)文件:Main.storyboard
APP啟動(dòng)結(jié)束后展現(xiàn)的應(yīng)用首頁SB
第五個(gè)文件:Info.plist
可在Info.plist文件里指定触机,啟動(dòng)頁是哪個(gè)SB帚戳,首頁是哪個(gè)SB,等等許多程序級(jí)別的配置儡首。
好了销斟,看起來很簡單,接下來椒舵,我準(zhǔn)備做個(gè)小程序蚂踊,搭界面為主,就拿我們公司Android客戶端的APP界面為例----魔房寶笔宿,一款金融理財(cái)產(chǎn)品犁钟。這次就寫這么多吧棱诱。下一節(jié),準(zhǔn)備把啟動(dòng)頁涝动,和首頁先做了迈勋,加油!