iphone 開發(fā)的基本入門知識

大前提:建立一個Xcode -> 點擊第二個 -> iOS -> Applaction -> Single View Application下的一個應用程序

一岖是、main.m 里面的

  1帮毁、main函數(shù),程序唯一的入口

  2豺撑、UIApplicationMain函數(shù)函數(shù)作用  

      1)創(chuàng)建一個應用程序UIApplication對象烈疚,他是應用程序的象征,一個UIApplication對象就代表一個應用程序

      2)指定誰管理應用程序的生命周期

      3)建立一個事件循環(huán)來捕捉處理用戶的行為

  3聪轿、永遠不用嘗試改變main.m中的內容

二爷肝、程序的生命周期

#import "AppDelegate.h"

@interface AppDelegate ()

@end

@implementation AppDelegate

#pragma mark 系統(tǒng)自動生成一個窗體

//1.當Applaction對象被實例化后,程序啟動調用這個方法

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.


NSLog(@"輸出系統(tǒng)自己創(chuàng)建的window=%@",self.window);

#pragma mark  手動創(chuàng)建一個UIwindow對象
//1).創(chuàng)建一個window對象

//UIWindow *customWindow = [[UIWindow alloc]init];

//2).獲取到UIScreen對象
UIScreen *screen = [UIScreen mainScreen];

//4).給window設置一個位置和尺寸

CGRect rect = [screen bounds]; //自動獲得當前所選擇的模擬器的窗體大小

UIWindow *customWindow = [[UIWindow alloc]initWithFrame:rect];

//5).給窗體設置背景顏色

customWindow.backgroundColor = [UIColor blueColor];

//6).給window設置一個根控制器陆错,window和控制共同協(xié)作起來顯示界面

customWindow.rootViewController = [[UIViewController alloc]init];

//7).將customwindow賦值給self.window

self.window = customWindow;

//8).把定義的window作為主window,并顯示出阿萊

[customWindow makeKeyAndVisible];

#pragma mark  在桌面上放一些試圖

//用試圖做一個王字玩玩

//第1個豎
UIView *view = [[UIView alloc]init];
view.frame = CGRectMake(140, 50, 40, 380);
view.backgroundColor = [UIColor yellowColor];
[self.window addSubview:view];

//第1個橫
UIView *view1 = [[UIView alloc]init];
view1.frame = CGRectMake(50, 50, 220, 40);
view1.backgroundColor = [UIColor greenColor];
[self.window addSubview:view1];

//第2個橫
UIView *view2 = [[UIView alloc]init];
view2.frame = CGRectMake(50, 220, 220, 40);
view2.backgroundColor = [UIColor redColor];
[self.window addSubview:view2];

//第3個橫
UIView *view3 = [[UIView alloc]init];
view3.frame = CGRectMake(40, 390, 240, 40);
view3.backgroundColor = [UIColor purpleColor];
[self.window addSubview:view3];




NSLog(@"程序啟動");
return YES;
}

//3.當應用程序將要進入非活躍狀態(tài)執(zhí)行灯抛,比如來電話了、鎖屏等音瓷。

 - (void)applicationWillResignActive:(UIApplication *)application {
    NSLog(@"程序進不活躍狀態(tài)");

}

//4.一般程序進入后臺对嚼,就會進入非活躍狀態(tài)呻此,但如果你的程序支持后臺擂找,程序在后臺也保持活躍狀態(tài)

- (void)applicationDidEnterBackground:(UIApplication *)application {

NSLog(@"程序進入后臺");
}

//5.程序進入前臺
  - (void)applicationWillEnterForeground:(UIApplication *)application {

  NSLog(@"程序進入前臺");
}

//2.當應用程序進入活躍狀態(tài)執(zhí)行
- (void)applicationDidBecomeActive:(UIApplication *)application {

NSLog(@"程序變成活躍狀態(tài)");
 }
//6.當程序將要退出是被調用摆霉,通常是用來保存數(shù)據和一些退出前的清理工作
- (void)applicationWillTerminate:(UIApplication *)application {

NSLog(@"程序退出");
}

@end

三徘溢、UIWindow

1撩扒、在iOS中扬卷,使用窗口與試圖在屏幕上顯示應用程序的內容扩然,窗口本身不具有任何可見的內容掸犬,但他對于應用程序的試圖提供一個基本的容器珊楼,試圖定義你想要的一些內容通殃,例如:圖像、文本亥曹、表格等等

2邓了、程序中每個時刻只能有一個UIWindow是keyWindow,通常應用程序只有一個window

3恨诱、iOS程序啟動完畢后,會首先創(chuàng)建一個UIWindow

4骗炉、一個iOS程序之所以能顯示到屏幕上照宝,完全是因為它有UIWindow,也就是說沒有UIWindow,就看不見任何UI界面

5句葵、常用方法
    
    1)讓當前UIWindow變成keyWindow(主窗口)

      - (void)makeKeyWindow;

    2)讓主窗口顯示出來

      - (void)makeKeyAndVisible; 

6厕鹃、練習

   自己創(chuàng)建一個window作為主窗口

四、程序的完整啟動過程

1乍丈、main函數(shù)

2剂碴、UIApplicationMain
   
   1)創(chuàng)建UIApplication對象
   2)創(chuàng)建UIApplication的delegate對象

3、delegate對象開始處理(監(jiān)聽)系統(tǒng)事件


  1)程序啟動完畢的時候, 就會調用代理的application:didFinishLaunchingWithOptions:方法

  2)在application:didFinishLaunchingWithOptions:中創(chuàng)建UIWindow

  3)創(chuàng)建和設置UIWindow的rootViewController
  4)顯示窗口

五轻专、手機屏幕的幾個概念

1忆矛、UIScreen

可以充當iOS物理屏幕的替代者,

[UIScreen mainScreen] bounds] 能夠獲取屏幕大小

2请垛、屏幕尺寸

  指具體的屏幕物理長度催训,以屏幕的對角線的長度作為試試

3、像素

  圖像由一個個點組成宗收,這個點叫做像素

4漫拭、屏幕分辨率

  指屏幕屏幕上總共的物理像素點

5、屏幕尺寸

  設備      屏幕尺寸  分辨率(pt) reader 分辨率(px) 

  3GS       3.5      320*480   @1x     320*480

  4/4S      3.5      320*480   @2x     640*960

  5/5S/5C   4.0      320*568   @2x     750*134

  6         4.7      375*667   @2x     750*1334

  6P        5.5      414*736   @3x     1242*2208


  pt: 用于計算屏幕上的坐標

六混稽、iOS坐標系統(tǒng)

1采驻、iPhone的試圖坐標系是以左上角為原點

2、每一個view的frame所使用的坐標系以它的父試圖的左上角為原點

3匈勋、試圖結構和相關函數(shù)

   //試圖顯示的位置
   CGPoint point = CGPointMake(x,y) 

   //試圖顯示的大小
   CGSize size = CGSizeMake(width,height)

   //試圖顯示的位置和大小
   CGRect rect = CGRectMake(x,y,width,height);

4礼旅、frame/Bounds/center

   frame: 包含試圖的位置和大小
   Bounds:包含試圖的大小,位置默認是(0颓影,0)
   center:包含試圖中心點所在的位置
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末各淀,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子诡挂,更是在濱河造成了極大的恐慌碎浇,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,204評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件璃俗,死亡現(xiàn)場離奇詭異奴璃,居然都是意外死亡,警方通過查閱死者的電腦和手機城豁,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評論 3 395
  • 文/潘曉璐 我一進店門苟穆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事雳旅「ィ” “怎么了?”我有些...
    開封第一講書人閱讀 164,548評論 0 354
  • 文/不壞的土叔 我叫張陵攒盈,是天一觀的道長抵拘。 經常有香客問我,道長型豁,這世上最難降的妖魔是什么僵蛛? 我笑而不...
    開封第一講書人閱讀 58,657評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮迎变,結果婚禮上充尉,老公的妹妹穿的比我還像新娘。我一直安慰自己衣形,他們只是感情好驼侠,可當我...
    茶點故事閱讀 67,689評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著泵喘,像睡著了一般泪电。 火紅的嫁衣襯著肌膚如雪般妙。 梳的紋絲不亂的頭發(fā)上纪铺,一...
    開封第一講書人閱讀 51,554評論 1 305
  • 那天,我揣著相機與錄音碟渺,去河邊找鬼鲜锚。 笑死,一個胖子當著我的面吹牛苫拍,可吹牛的內容都是我干的芜繁。 我是一名探鬼主播,決...
    沈念sama閱讀 40,302評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼绒极,長吁一口氣:“原來是場噩夢啊……” “哼骏令!你這毒婦竟也來了?” 一聲冷哼從身側響起垄提,我...
    開封第一講書人閱讀 39,216評論 0 276
  • 序言:老撾萬榮一對情侶失蹤榔袋,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后铡俐,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體凰兑,經...
    沈念sama閱讀 45,661評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,851評論 3 336
  • 正文 我和宋清朗相戀三年审丘,在試婚紗的時候發(fā)現(xiàn)自己被綠了吏够。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,977評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖锅知,靈堂內的尸體忽然破棺而出播急,到底是詐尸還是另有隱情,我是刑警寧澤售睹,帶...
    沈念sama閱讀 35,697評論 5 347
  • 正文 年R本政府宣布旅择,位于F島的核電站,受9級特大地震影響侣姆,放射性物質發(fā)生泄漏生真。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,306評論 3 330
  • 文/蒙蒙 一捺宗、第九天 我趴在偏房一處隱蔽的房頂上張望柱蟀。 院中可真熱鬧,春花似錦蚜厉、人聲如沸长已。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽术瓮。三九已至,卻和暖如春贰健,著一層夾襖步出監(jiān)牢的瞬間胞四,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評論 1 270
  • 我被黑心中介騙來泰國打工伶椿, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留辜伟,地道東北人。 一個月前我還...
    沈念sama閱讀 48,138評論 3 370
  • 正文 我出身青樓脊另,卻偏偏與公主長得像导狡,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子偎痛,可洞房花燭夜當晚...
    茶點故事閱讀 44,927評論 2 355

推薦閱讀更多精彩內容