一.新增知識點:
1.關(guān)于開發(fā)中的顏色常識:
開發(fā)過程中,美工所強(qiáng)說的顏色為24位(即所謂的R.G.B各8位),而對于iOS開發(fā)而言,顏色信息為32位(多出一位即為透明度)
美工中的顏色取值為0255,而iOS開發(fā)中的顏色取值為01(使用color的RGB方法時一定注意!!)
美工中的#代表十六進(jìn)制數(shù),與之形成對比:iOS開發(fā)中將OX代表十六進(jìn)制
實際開發(fā)中若需要計算美工給予的十六進(jìn)制數(shù)轉(zhuǎn)換為開發(fā)中的什么顏色時,可以使用"UIColor+Hex"這個分類
二.知識點回顧:
1.部分配置的用途:
1)Bundle Identifier: APP中的唯一標(biāo)識(作何使用?1.上傳到appstore 2.推送)
2)Deployment Target:部署版本(當(dāng)前app支持系統(tǒng)的版本),即支持多少版本以上
3)Status Bar Style:這個字段只用于程序啟動時(圖2)
圖1:
Snip20160614_1.png
圖2:
Snip20160614_2.png
4)LaunchScreen和LaunchImage的區(qū)別:
LaunchScreen:自動識別當(dāng)前模擬器或者真機(jī)的尺寸(本質(zhì)是截屏)
LaunchImage:模擬器或者真機(jī)屏幕可視范圍尺寸的啟動圖片決定
當(dāng)設(shè)置了launch Screen File文件后,系統(tǒng)會默認(rèn)執(zhí)行這里的設(shè)置,當(dāng)設(shè)置為空時,默認(rèn)執(zhí)行Launch Image Source內(nèi)的啟動項設(shè)置
P.S若存在刪除LaunchScreen,但還是去加載LaunchScreen的情況,可以先清除緩存,或直接將模擬器或真機(jī)中的軟件刪除后再試
5)動態(tài)庫:需要用到時在加載 <========> 靜態(tài)庫:程序一運(yùn)行就加載
6)info.plist文件中修改bundle name可以修改程序的名稱
2.UIWindow知識點回顧:
[self.window makeKeyAndVisible] 窗口要顯示的時候,就會把窗口的根控制器的view添加到窗口上
makeKey:把當(dāng)前窗口成為程序的主窗口(需要注意的是,若在還未執(zhí)行這句話前,application.keyWindow是沒有值得)
Visible:讓窗口可見(令visible.hidden = NO)
UIWindow的根控制器是蘋果內(nèi)部強(qiáng)制要求,必須是要有的
3.UINavigationController
結(jié)構(gòu):1.包括自身的一個view(任何控制器都具有),2.專門存放?子控制器的View,3.導(dǎo)航條
1.導(dǎo)航控制器的導(dǎo)航欄狀態(tài)是由棧頂控制器決定的,導(dǎo)航控制器若沒有根控制器,初始化時就沒法設(shè)置導(dǎo)航欄狀態(tài),但后來若有添加控制器,則依然可以更改(導(dǎo)航條的內(nèi)容由其當(dāng)前所在的棧頂控制器的navigationItem來決定)
2.顯示在最外層的view是導(dǎo)航控制器棧頂控制器的view
3.導(dǎo)航欄的Y值為20,高度為44,之所以顯示時,上半部是一片灰蒙效果,是因為其導(dǎo)航欄的子控制器超出了其父控制器,(子控件超過父控件依然可以顯示)
4.initWithRootViewController方法底層會調(diào)?用push方法,把傳?的子控制器,添加為導(dǎo)航控制器的子控制器.
5.如果設(shè)置了導(dǎo)航控制器的標(biāo)題,則push后子控制器的返回按鈕上就是該導(dǎo)航控制器的標(biāo)題
6.通過修改leftBarButtonItem和rightBarButtonItem可以更改導(dǎo)航條上左右兩部分顯示的東西(導(dǎo)航欄的左右側(cè)類型是UIBarButtonItem,而titleView類型是UIView)
4.UITabBarController
1.UITabBarController切換的原理:點擊下面的按鈕,會先把當(dāng)前控制器的View從TabBarController存放?子控件View的View當(dāng)中移除(只是移除view,子控制器還在數(shù)組當(dāng)中,沒有被移除),并把對應(yīng)的子控制器的view添加上去
2.UITabBar的高度為49
5.UIApplicationMain底層實現(xiàn)
1.創(chuàng)建UIApplication對象(1.打開網(wǎng)頁 2.設(shè)置聯(lián)網(wǎng)狀態(tài) 3.設(shè)置狀態(tài)欄 4.設(shè)置提醒數(shù)字)
2.創(chuàng)建UIApplication代理對象(1.監(jiān)聽?wèi)?yīng)用程序聲明周期 2.內(nèi)存警告)
3.開啟主運(yùn)行循環(huán),保證程序一直執(zhí)行
4.判斷info.plist有沒有指定main,有就會去加載main.storyboard
加載main.storyboard
1.創(chuàng)建窗口
2.設(shè)置窗口根控制器
3.顯示窗口