日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

iOS程序启动过程笔记

發(fā)布時(shí)間:2025/6/17 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iOS程序启动过程笔记 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
CHENYILONG

筆記



一、iOS程序的完整啟動(dòng)過(guò)程(有storyboard
1.先執(zhí)行main函數(shù),main內(nèi)部會(huì)調(diào)用UIApplicationMain函數(shù)

2.UIApplicationMain函數(shù)里面做了什么事情:
1>?創(chuàng)建UIApplication對(duì)象

2>?創(chuàng)建UIApplicationdelegate對(duì)象-----MJAppDelegate

3>?開(kāi)啟一個(gè)消息循環(huán)
*
?每監(jiān)聽(tīng)到對(duì)應(yīng)的系統(tǒng)事件時(shí),就會(huì)通知MJAppDelegate

4>?為應(yīng)用程序創(chuàng)建一個(gè)UIWindow對(duì)象(繼承自UIView),設(shè)置為MJAppDelegatewindow屬性

5>?加載Info.plist文件,讀取最主要storyboard文件的名稱

6>?加載最主要的storyboard文件,創(chuàng)建白色箭頭所指的控制器對(duì)象

7>?并且設(shè)置第6步創(chuàng)建的控制器為UIWindowrootViewController屬性(根控制器)

8>?展示UIWindow,展示之前會(huì)將添加rootViewControllerviewUIWindow上面(在這一步才會(huì)創(chuàng)建控制器的view
[window addSubview: window.rootViewControler.view];

二、UIWidnow
1.常見(jiàn)方法
1>?成為主窗口
[window makeKeyWindow];

2>?顯示、并且成為主窗口
[window makeKeyAndVisible];

3>?僅僅是顯示窗口
window.hidden =
?NO;

2.主窗口
1>?一個(gè)iOS app只能有一個(gè)主窗口(keyWindow),只有keyWindow才能接受文本框的輸入事件

2>?如何訪問(wèn)主窗口
* [UIApplication sharedApplication].keyWindow

3.app中所有的窗口
* [UIApplication sharedApplication].windows

4.屏幕的旋轉(zhuǎn)事件
1>?當(dāng)屏幕旋轉(zhuǎn),UIApplication對(duì)象接受到旋轉(zhuǎn)事件,接著會(huì)通知keyWindow
2>?最終,旋轉(zhuǎn)事件傳遞到UIWidnow身上,UIWindow會(huì)通知rootViewControlerrootViewControler自己會(huì)決定要不要做相應(yīng)的旋轉(zhuǎn)操作

三、UIViewController
1.控制器內(nèi)部的view是延遲加載
1>?用到時(shí)再加載
2>?加載完畢后會(huì)調(diào)用控制器的viewDidLoad方法

2.創(chuàng)建控制器的方式
1>?直接通過(guò)代碼創(chuàng)建
MJOneViewController *one = [[MJOneViewController alloc] init];
//?如果調(diào)用init方法創(chuàng)建控制器(MJTwoViewController),那么在加載控制器view的時(shí)候:
// 1.優(yōu)先查找?“MJTwoView.xib"
// 2.其次再查找?同名?xib?文件?“MJTwoViewController.xib"
// 3.如果沒(méi)有找到上述的xib文件,會(huì)直接通過(guò)代碼創(chuàng)建一個(gè)空白的view

2>?通過(guò)storyboard創(chuàng)建控制器
*
?加載storyboard文件
UIStoryboard *story = [UIStoryboard storyboardWithName:
@"sb的文件名"?bundle:nil];

*
?storyboard中創(chuàng)建控制器
//?根據(jù)控制器在storyboard文件中storyboard id來(lái)創(chuàng)建
MJOneViewController *one = [story instantiateViewControllerWithIdentifier:
@"控制器的storyboard id"];

//?直接創(chuàng)建箭頭所指的控制器(initial controller
MJOneViewController *one = [story instantiateInitialViewController];

3>?通過(guò)xib創(chuàng)建控制器
//?創(chuàng)建控制器的view時(shí),就會(huì)加載MJOneViewController.xib文件,并且會(huì)將控制器當(dāng)做是xibOwner傳入
MJOneViewController *one = [[MJOneViewController alloc] initWithNibName:
@"MJOneViewController"?bundle:nil];
//?加載one控制器的view[[NSBunle mainBundle] loadNibName:@"MJOneViewController" owner:one options:nil];

//?總結(jié):能用storyboard描述控制器的view,就盡量用storyboard

四、導(dǎo)航控制器
1.常見(jiàn)方法
1>?將子控制器vc壓入棧中
[
self.navigationController pushViewController:vc animated:YES];

2>?出棧(彈出棧頂控制器)
[
self.navigationController popViewControllerAnimated:YES];

3>?直接跳到棧底控制器(回到根控制器)
[
self.navigationController popToRootViewControllerAnimated:YES];

2.使用原理
1>?導(dǎo)航控制器內(nèi)部有個(gè)viewControllers棧來(lái)存放所有的子控制器
2>?展示在導(dǎo)航控制器上面的永遠(yuǎn)是棧頂控制器的view

3.一般情況下,導(dǎo)航欄上面顯示什么內(nèi)容,由當(dāng)前棧頂控制器的navigationItem屬性決定
* navigationItem.title :
?導(dǎo)航欄的中間標(biāo)題(也可以直接通過(guò)控制器的title屬性設(shè)置標(biāo)題)
* navigationItem.titleView :
?導(dǎo)航欄的中間控件
* navigationItem.leftBarButtonItem :
?導(dǎo)航欄左邊的按鈕
* navigationItem.rightBarButtonItem :
?導(dǎo)航欄右邊的按鈕

4.特殊:導(dǎo)航欄左上角的返回按鈕?文字?由上一個(gè)控制器的navigationItem.backBarButtonItem決定
*
?返回按鈕不需要監(jiān)聽(tīng)(默認(rèn)的操作就是出棧)













??chenyilong. Powered by?Postach.io
  • Blog

轉(zhuǎn)載于:https://www.cnblogs.com/ChenYilong/p/3560217.html

總結(jié)

以上是生活随笔為你收集整理的iOS程序启动过程笔记的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 外国黄色网址 | 性爱视频在线免费 | 亚洲偷怕 | 青青草免费公开视频 | 国产午夜一级片 | 日韩精品一区二区三区高清免费 | 超碰人人干人人 | 午夜老司机福利 | 亚洲第三十七页 | 精品午夜久久久 | 国产毛片久久久 | 亚洲一区二区综合 | 老鸭窝一区二区 | 欧美性极品 | www欧美| 中文字幕一区二区三区在线观看 | 伊人欧美在线 | 久久99精品国产.久久久久久 | 国产suv精品一区二区68 | 极品久久久 | 91亚洲国产成人精品性色 | 91最新地址| 超碰91人人 | 美日韩av在线 | 成人高潮片 | 337p日本大胆噜噜噜噜 | 黄色成人毛片 | 国产免费又爽又色又粗视频 | 国产一区二区三区播放 | 成人一级影片 | 懂色av蜜臀av粉嫩av分 | 1级黄色大片儿 | 伊人黄色| 哪里可以看免费毛片 | www五月天com | 国产91国语对白在线 | 99国产精品一区二区三区 | 中文字幕第100页 | 日日摸天天爽天天爽视频 | 国产黄色一级 | 97久久免费视频 | 四虎影院污| 欧美乱妇18p | 无码国产精品一区二区高潮 | 精品视频一二区 | 成人看的毛片 | 就要爱爱tv | 99免费在线 | 久久久精品美女 | 91在线中文 | 182tv福利视频 | 日本一级淫片免费放 | 免费日韩一区 | 国产精品午夜未成人免费观看 | 黄色激情毛片 | 欧美成人一区在线 | 日日夜夜欧美 | 久久久久亚洲AV | 天堂网www在线 | 岛国av免费看 | 综合黄色| jizzjizzjizz亚洲女 | 91禁在线看| 亚洲精选av | 911看片| 亚洲国产精品成人午夜在线观看 | 欧美亚洲在线 | 卡一卡二视频 | 色热热 | 插女生下面 | 最新久久久 | 欧美日韩一区二区不卡 | 欧美一区二区三区成人片在线 | 色综合久久久久无码专区 | 日日摸夜夜添狠狠添久久精品成人 | 永久免费未网 | 成人精品一区二区三区电影 | 中文在线国产 | 国产喷水在线 | av网站一区 | 999视频在线 | 欧美成人aaaa| 国产视频一区二区三区四区五区 | 青青操网 | 国产成人精品无码片区在线 | 521av在线| 亚洲一级Av无码毛片久久精品 | 91精品国产综合久久久久久久 | 免费无遮挡在线观看视频网站 | 国产成人无码aa精品一区 | 成人黄性视频 | 成人夜色视频 | 无码av免费精品一区二区三区 | 免费播放毛片精品视频 | 欧美性色a | 久色91| 成人av高清在线观看 | 日韩欧美三区 | 亚洲欧美日韩精品 |