Android 程序員學習 iOS ——故事從這裏開始

最近由於公司的一些緣由,須要涉及iOS開發。在坑裏摸爬滾打了2周以後,就寫個入門心得吧。
在一切的一切開始以前,你要先會Objective-C或者Swift(喜歡哪一個用哪一個,你開心就好)。程序員

而後,要準備一臺OS X的電腦,並安裝好Xcode,而後一切就能夠開始了。app

打開Xcode,而後新建一個項目,看到的界面是這樣的(其實和Android Studio的模式很類似啦)佈局

clipboard.png
看看幾個項目,你大概也理解了分別要建立怎麼樣的應用,它提供一個模板,而後能夠快速建立出某種結構的程序。大部分狀況的應用是屬於Tabbed Application,也就是帶Tab的程序。spa

文件概念遷移

建立好一個應用後,咱們能看到AppDelegatestoryboardplist之類的文件。這些分別是啥呢?code

我來個簡單幹脆的映射,方便理解,可是不精準,若有錯誤,感謝指出xml

iOS Android 備註
Info.plist AndroidManifest.xml 記錄應用程序的一些元數據
AppDelegate Application 管理整個Application的生命週期
ViewController Activity 負責管理View,管理整個應用程序的交互
各種storyboard文件 各種xml文件 定義一些佈局,一些iOS程序員習慣在代碼裏寫佈局,可能用不到storyboard

Android程序始於ApplicationonCreate方法,iOS始於AppDelegateapplication didFinishLaunchingWithOptions方法,這裏惟一不一樣的是Androidlaunch activity只能使用AndroidManifest.xml指定,可是iOS可使用代碼去指定。blog

self.window.rootViewController = xxxx;

從Activity到UIViewController

Android中的ActivityView並無強制關聯,可是iOS中的UIViewController默認都帶一個View,你能夠把這個認爲是ActivityWindowdecorView,是全部View的父容器。當你生成好一個UIViewController以後,你往它的成員變量view中添加你的視圖便可,若是你是從storyboard中生成的UIViewController,那你構建的View就會自動添加進來。生命週期

Android一切初始化的地方,咱們習慣在onCreate中使用setContentView以後,而後用findViewById獲取到控件的實例,爲控件綁定一些監聽器,而iOS中,咱們開始的地方,大部分是UIViewControllerviewDidLoad方法,咱們使用代碼生成咱們要的控件,同時爲控件綁定事件,或者使用storyboardOutlet系統綁定到咱們的類成員變量上,並生成事件監聽。事件

全部故事,都是從這裏開始對吧?ip

接下去要作的事就是根據用戶和控件的交互,在視圖上作出相應的反饋便可。

界面之間的跳轉

Android的跳轉使用Intent從一個Activity跳轉到另一個Activity
iOS中,咱們在跳轉以前,要作的事情就是生成咱們的目標UIViewController,而後使用咱們想要的方式跳轉。 iOS爲咱們提供了幾種模式跳轉,最多見的有2種,使用navigationControllerpushModal,大部分的iOS程序,頂部都有一個導航條,它由一個更高級抽象的NavigationController進行控制,就和Android中的Task概念相似,咱們每次pushViewController,就會在它的棧中壓入一個ViewController。而pushModal看名字就知道,是彈出一個模態框,它的返回操做通常只有關閉一個按鈕,具體使用哪一種方式,須要和產品的概念相呼應才行。

UI的相關介紹就到這,接下去有時間,咱們談談Android中的HandleriOS中以什麼樣的方式存在

相關文章
相關標籤/搜索