麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

ios開發學習筆記(1)

2019-11-14 18:52:43
字體:
來源:轉載
供稿:網友

objective-c基礎總結

第一二章

1.application:didiFinishLauchingWithOptions:程序啟動后立即執行

2.啟動界面代碼格式:
self.window = [UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
//1.從Infor.plist中取出版本號
NString *version = [NSBundle mainBundle].infoDictionary[key];
//2.從沙盒中取出上次存儲的版本號
NSString *saveVersion = [[NSUserDefaults standaryUserDefaults] objectForKey:key];

if(([version isEqualToString:saveVersion])){
//如果不是第一次使用版本
//顯示狀態欄
application.statusBarHidden= NO;
//等待寫
//self.window.rootViewController = [[*** alloc] init];


}
else
{
//版本號不一樣 第一次使用新版本
//將新版本號寫入沙盒
[[NSUserDefaults standardUserDefaults] setObject:version forkey:key];
[[NSUserDefaults standartUserDefaults] synchronize];
//顯示版本新特性界面
self.window.rootViewController = [[*** alloc] init];
}
[self.window makeKeyAndVisible];

return YES;

3.管理快照:Xcode快照是一種功能有限的版本控制(適用于中小型項目)

4.CGRectMake使用前兩個數值表示文本標簽距離離屏幕上邊緣和下邊緣的位置,后兩個數值表示文本標簽的寬度和高度

5.info.plist結尾文件:描述項目本身的屬性。必須在什么地方設置應用程序的圖標、啟動圖像、支持的設備朝向等。項目導航器,可視化設置眾多的plist選項

6.用于常規屏幕的圖表明為Icon.png,而用于Retina屏幕的圖標名為[email protected],當應用程序在使用Retina屏幕的設備上運行時,如果它被要求顯示一幅圖像,它將自動使用包含后綴@2x(名稱與指定的名稱相同)的圖像資源。這讓開發人員無需修改應用程序的任何代碼就能支持Retina屏幕。還可以可視化Summary選線卡的Deployment Info部分設置啟動圖像。對于iphone,只能設置縱向啟動圖像,但iPad支持橫向和縱向啟動圖像。

7.設置狀態欄:Status bar is initially Hidden(默認隱藏狀態欄) NO顯示狀態欄

 

第三章 探索Apple平臺語言Objective-C

1.(1)OOP(面向對象編程)使用的指令類型與過程型編程相稱,但通過組織它們讓應用程序易于維護,并盡可能重用代碼。在OOP中,您將創建對象,其中存儲了描述某種東西的數據以及操縱這些數據的指令。(2)OOP的另一個重要的方面是繼承

2.術語介紹:
》類:定義對象及其功能的代碼,通常由頭文件/接口文件和實現文件組成。
》子類:建立在另一個類的基礎之上并添加了額外的功能。您在iOS開發中使用的幾乎任何東西都是其他某種東西的子類,它繼承了父類的所有功能和屬性
》超類/父類:另一個類繼承的類
》單例:在程序的整個生命周期內,只能實例化一次的類。例如,獲悉設備朝向的類被實現為單例,因為只有一個返回朝向信息的傳感器。
》對象/實例:在代碼中調用并出于活動狀態的類。類是讓對象能夠工作的代碼,而對象是處于活動狀態的類。對象也被稱為類的實例。
》實例化:根據類創建活動對象的過程
》實例方法:在類中實現的一項基本功能。對于提醒類,這可能是為給定提醒設置警報的setAlarm
》類方法:類似于實例方法,但使用與根據類創建的所有對象。
》消息:當您需要使用對象的方法時,您給對象發送一條信息,這有稱為成為調用方法
》實例變量:對象特有的一項信息的存儲位置。
》變量:信息的存儲位置。不用于實例變量,常規變量通常只能在定義它的方法內使用。
》參數:調用方法時向它提供的一項信息。如果要調用提醒對象的“設置警報”方法,則必須提供要設置的時間。在這種情況下,該時間將是setAlarm方法的一個參數
》屬性:使用特殊編譯指令配置的一個實例變量,這樣可在代碼中方便地訪問它
》Self:一種在方法中引用當前對象的方式。在應用程序中使用實例方法或屬性時,必須使用特定對象限定它。在類中編寫訪問其方法或屬性的代碼時,可使用self來引用當前對象。

3.類的接口文件和實現文件的名稱通常與類名相同。.h接口文件 .m實現文件。協議是Objective-C特有的一種功能,需要編寫的方法被集合在一起,并用同一個名稱標識,這被稱為協議

4.@PRoperty編譯指令,與另一個名為synthesize的命令結合使用,以簡化與接口中定義的實例變量的交互方式。@property和@synthesize的作用是為編寫設置函數和獲取函數,并且優雅方便使用

5.在編譯指令@property中指定屬性(strong,nonatomic)告訴Xcode如何處理屬性引用的。屬性(attribute)strong 告訴系統,保留引用的對象,而不要將其從內存中刪除。屬性(nonatomic)告訴Xcode,不用擔心應用程序的不同部分同時使用該屬性的問題。

6.+類方法,-實例方法。

7.定義方法1:+(方法返回的類型)方法名:(方法期望的信息類型)引用該信息的變量名, 定義方法2:+(方法返回的類型)方法名:(方法期望的信息類型)引用該信息的變量名 添加簡短的描述標簽:數據類型:變量名


8.如果您不知道將給方法傳遞什么或希望能夠從同一個方法返回不同類型的對象,id類型很有用

9.使用@property和@synthesize 結合可以使我們能夠以直觀的方式訪問和修改實例變量

10.@implementation myclass 告訴Xcode該文件實現那個類

11.使用方法被稱為給對象發送信息

12.有一些(循環引用)ARC 無法清理,A引用B B引用C C引用D D引用B 循環引用 ,A可以使用完對象B 但BCD存在循環引用,將無法釋放這三個對象,避免這樣的問題可以使用弱引用(Weak reference)

第四章:Cocoa Touch內幕

1.Apple每個iOS應用程序模板中都包括三個重要框架(CoreGraphics、Foundation、UIKit)

2.Cocoa Touch層:(1)UIKit:負責啟動和結束應用程序、控制界面和多點觸摸,并讓您能夠訪問常見的數據視圖(Word Excel)(2)Map Kit:讓開發人員在任何應用程序中添加Goodle地圖視圖,包括標注、定位、事件處理功能(3)Game Kit:網絡交互性(4)Message UI/Address Book UI/Event Kit UI:應用程序之間集成需求(5)iAd:使應用程序加入廣告

3.多媒體層:(1)AV Foundation:用于播放和編輯復雜的音頻和視頻。如電影錄制、音軌管理和音頻平移(2)Core Audio:提供iPhone中播放和錄制音頻的方法(3)Core Image:開發人員在應用程序添加高級圖像和視頻處理功能(4)Core Graphics:添加2D回話和合成功能(5)對iPhone屏幕上顯示的文本進行精確的定位和控制(6)Image I/O:導入與導出圖像數據和圖像元數據(7)Media Player:使用典型的屏幕空間輕松地播放電影(8)OpenGL ES:創建2D 3D動畫(9)Quartz Core用于創建動畫:利用設備的硬件功能

4.核心服務層:(1)Accounts:用于存儲眾多不同服務的賬號信息(2)Address Book:用于直接訪問和操作地址薄(3)CFNetwork:訪問BSD套接字、HTTP和FTP協議請求以及Bonjour發現(4)Core Data:創建數據模型提供一個SQLite關系的數據庫模型
(5)Core Foundation:與Foundation框架相同(6)Foundation:提供一個封裝器(操作字符串 數組和字典都是通過Foundation框架進行的)(7)Event Kit:訪問存儲的日歷信息(8)Core Location:用于iPhone iPad 3G GPS獲取經緯度和測量精度
(9)Core Motion:管理大部分與運動相關的事件:使用加速劑和陀螺儀(10)Quick Look:實現文件瀏覽功能(11)Store Kit:創建購買實物(12)System Configuration:用于確定設備網絡配置的當前狀態


5.核心OS層:(1)Accelerate:簡化計算和大數據操作任務,包括數字信號處理功能
(2)External accessory:用于開發到配件的借口(3)Security:提供執行加密(添加 刪除 修改密鑰項)(4)System:訪問不受限制的UNIX開發環境當中一些典型的工具

6.根類(NSObjct)應用程序類(UIApplication)窗口類(UIWindow)視圖(UIView)響應者(UIResponder)屏幕控件(UIControl)視圖控制圖UIController

7.字符串NSString/NSMutableString其中NSMutableString可用與創建可被修改的字符串。NSString在初始化后就不可改變,NsMutableString可以修改(加長、縮短、替換等)

8.數組(NSArray/NSMutableArray)

9.字典(NSDictionary/NSMutableDictionary)字典以鍵值對形式存在

10.數字(NSNumber/NSDecimalNumber)可以將數字作為對象輕松加入數組或字典中,NSDecimalNumber是NSNumber的一個子類

11.日期(NSData)

12.網址(URL)

13界面類:標簽(UILabel)按鈕(UIButton)開關(UISwitch)分段控件(UISegmentedControl)滑塊(UISlider)步進控件(UIStepper)文本框(UITextField/UITextView)選擇器(UIDatePicker/UIPicker)彈出框(UIPopoverController)

第五章:Cocoa Touch內幕

1.實例化指的是創建對象的實例,讓您能夠在程序當中使用,獲得其類當中的所有功能

2.IB(Interface Builder)故事板 打開storyboard顯示該故事板的文件骨架

第六章:模型-視圖-控制器的應用程序設計

1.視圖控制器可包含應用程序邏輯,但這不以為著所有代碼都包含視圖控制器中。可以在核實的時候定義額外的類,已抽象應用程序邏輯

2.使用IBOutlet:用于讓代碼能夠與視圖中的對象交互(例如:@property(strong,nonatomic) UILbel *myLabel1與:@property(strong,nonatomic) IBOutlet UILbel *myLabel1配套使用)

3.對于接口文件.h中的每個編譯指令@property實現文件.m中都必須有對應的編譯智力高@synthesize

4.使用IBAction:用于指出在特定的事件發生時應調用代碼中相應的方法。(例如用戶點擊了某個按鈕或更新了文本框)采取相應的措施

5.AppDelegate.h 和AppDelegate.m組成了該項目將創建的UIAppkucation實例的委托,可對文件進行編輯,已添加控制應用程序運行時如何工作的方法。

6.ViewController.h ViewController.m實現一個視圖控制器(UIViewControoler)這個類包含控制試圖的邏輯。

7.確保使用完試圖后,在代碼中定義的實例變量不再指向對象。可以將實例變量對應的屬性設置為nil這樣這些文本框和標簽占用的內存可被重用

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 黄视频在线网站 | 国产精品自拍99 | 日本黄色a视频 | 免费观看视频在线 | 成人毛片视频免费看 | 神秘电影91 | 欧美一区2区三区4区公司二百 | 亚洲av一级毛片特黄大片 | 欧美a黄| 午夜视频色 | 国产午夜免费福利 | 免费香蕉成视频成人网 | 一区二区三区日韩在线 | 少妇一级淫片免费放播放 | 久草最新| 日韩视频在线视频 | qyl在线视频精品免费观看 | 国产免费一级 | 看一级毛片 | 亚洲国产网址 | 91在线免费观看 | 7m视频成人精品分类 | 久草在线视频福利 | 国产69精品久久久久久野外 | 羞羞视频在线免费 | 深夜福利久久久 | 午夜爽爽爽男女免费观看hd | 最新av在线免费观看 | 91精品国产乱码久久桃 | h色网站在线观看 | 黄污污网站 | 国产精品jk白丝蜜臀av软件 | 国产精品av久久久久久网址 | 国产亚洲综合一区二区 | 国产精品久久99精品毛片三a | 91av在线影院 | 久久久www视频 | 国产成人自拍av | 国产宾馆3p国语对白 | 国产1区2区3区中文字幕 | 午夜国产福利 |