01第一個iOS程序

開發(fā)步驟

  • 搭建基本的軟件界面
  • UI (User Interface)
  • 獲取網(wǎng)絡(luò)數(shù)據(jù)
  • 網(wǎng)絡(luò)請求,JSON
  • 顯示數(shù)據(jù)到軟件界面
  • Model、UITableView

UI界面的組成- 對象(文本對象、圖片對象、按鈕對象)
要有對象要先有類,蘋果已經(jīng)給了相應(yīng)的類

把蘋果提供的類來進行創(chuàng)建對象,設(shè)置對象屬性后,再把對象添加到軟件界面上,給用戶看即可。

UIKit框架

  • 蘋果給開發(fā)者提供了一個非常強大的UIKit框架
  • UIKit框架中包含了豐富多彩的各種UI元素

首先UIKit框架非常重要,必須要學(xué)好。
要想做一個完整的iOS應(yīng)用,還有別的框架要學(xué)習(xí)和使用,僅僅界面是不夠的。日后,自己也能寫框架。

tips:

  • 模擬器無法正常運行,可能原因是模擬器版本低于代碼版本。
  • UI上每一個元素都是對象。
  • 項目先進行分析后,再進行編碼。
  • 控制器是UI界面的大管家,管理UI界面元素的各種事件。

控制器-繼承自自UIViewController

  • UI界面的大管家 管理UI元素的各種事件、點擊事件
    每一個界面由一個控制器來管理

tips:
為了高度封裝性所以要把屬性和方法全放入.m文件中

  • 分類:可以為某個類增加額外的方法
@interface ViewController(HighClass)
- (void)run;
@end
@implementation ViewController(HighClass)
- (void)run{ }
@end
  • 類擴展:可以為某個類增加額外的屬性和方法,可以放在.m或者.h文件中
    作用:存放類的私有屬性,減少耦合性,在.m文件中別人訪問不了
@interface ViewController()
/*屬性和方法的聲明*/
@property (strong, nonatomic) IBOutlet UILabel *label;
- (void)run;
@end
storyboard文件的認(rèn)識
  • 用來描述軟件界面
  • 默認(rèn)情況下,程序一啟動就會加載Main.storyboard
  • 加載storyboard時,會首先創(chuàng)建和顯示箭頭所指的控制器界面
IBAction和IBOutlet
  • IBAction
  • 本質(zhì)就是void
  • 能讓方法具備連線的功能
  • IBOutlet
  • 能讓屬性具備連線的功能
storyboard連線容易出現(xiàn)的問題
  • 被連接的方法代碼被刪掉,但是連線沒有去掉
  • 可能會出現(xiàn)方法找不到的錯誤
  • unrecognized selector sent to instance
  • 被連接的屬性代碼被刪掉,但是連線沒有去掉
  • this class is not key value coding-compliant for the key
UIViewController的認(rèn)識
  • 一個控制器負(fù)責(zé)管理一個界面
  • 控制器負(fù)責(zé)界面的創(chuàng)建和事件處理
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 12,180評論 4 61
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,841評論 25 708