Time of Update: 2015-04-01
標籤:@代表“Objective-C”的標誌,證明您正在使用Objective-C語言 Objective-C語言關鍵詞,@property與@synthesize配對使用。 功能:讓編譯好器自動編寫一個與資料成員同名的方法聲明來省去讀寫方法的聲明。 如:1、在標頭檔中:C代碼 @property int count; 等效於在標頭檔中聲明2個方法:C代碼
Time of Update: 2015-03-31
標籤:1.Info.plist常見的設定 * 建立一個工程後,會在Supporting files檔案夾下看到一個“工程名-Info.plist”的檔案,該檔案對工程做一些運行期的配置,非常重要,不能刪除* 在舊版本Xcode建立的工程中,這個設定檔的名字就叫“Info.plist”*
Time of Update: 2015-03-31
標籤:1. 如何建立一個控制器1.1. 控制器常見的建立方式有以下幾種//1.1.1:通過storyboard建立//1.1.2:直接建立YHViewController *viewController = [[YHViewController alloc] init];//1.1.3:指定xib檔案來建立YHViewController *viewController= [[YHViewController alloc] initWithNibName:@"YHViewController"
Time of Update: 2015-04-01
標籤:1. main函數 2. UIApplicationMain* 建立UIApplication對象* 建立UIApplication的delegate對象 3.1 delegate代理開始處理(監聽)系統事件 (沒有storyboard)* 程式啟動完畢的時候, 就會調用代理的application:didFinishLaunchingWithOptions:方法*
Time of Update: 2015-04-01
標籤:1.1 - (void)layoutSubviews;* 當一個控制項的frame發生改變的時候就會自動調用* 一般在這裡布局內部的子控制項(設定子控制項的frame)* 一定要調用super的layoutSubviews方法 1.2 - (void)didMoveToSuperview;* 當一個控制項被添加到父控制項中就會調用 1.3 - (void)willMoveToSuperview:(UIView *)newSuperview;*
Time of Update: 2015-03-31
標籤:在對象之外訪問執行個體變數時,應該總是通過屬性來做.在那麼在對象內部訪問執行個體變數的時候,又該如何呢? 這是 OCer們一直激烈討論的問題.有人認為,無論什麼情況,都應該通過屬性來訪問執行個體變數;也有人說,”通過屬性訪問”和”直接存取”應該搭配著用. 除了幾種特殊情況之外, 筆者強烈建議大家在讀取執行個體變數的時候採用直接存取的形式,而在設定執行個體變數的時候通過屬性來做.請看下面的類:@interface EOCPerson :
Time of Update: 2015-03-31
標籤:int是靜態類型NSInteger是動態類型蘋果官方推薦使用NSInteger,因為在蘋果的api實現中,NSInteger是一個封裝,它會識別當前作業系統的位元,自動返回最大的類型。定義的代碼類似於下: #if __LP64__ || TARGET_OS_EMBEDDED || TARGET_OS_IPHONE || TARGET_OS_WIN32 ||
Time of Update: 2015-03-30
標籤:塊(block)是OC對ANSI C所做的擴充,使用塊可以更好地簡化OC編程,而且OC的很多API都依賴於塊。一、block(一)、block的使用方法文法格式如下: ^ [塊傳回值類型] (形參1,形參2,...){} 必須以^開頭,傳回值類型通常都被省略,如果沒有形參,建議使用void作為預留位置。如果程式需要多次調用已經定義的塊,那麼應該將塊賦值給一個塊變數,定義塊變數的文法格式如下:block傳回值類型 (^block變數名) (形參類型1,形參類型2,...)
Time of Update: 2015-03-30
標籤:property是Objective-C的關鍵詞,與@synthesize配對使用,用來讓編譯好器自動產生與資料成員同名的方法聲明。@synthesize則是用來產生對應聲明方法的實現。一、@property關鍵字 1、property的文法格式:@property
Time of Update: 2015-03-30
標籤:今天我們來看一下OC中數組對象在是如何處理對象元素的引用計數問題的,同時介紹一下自動釋放池的相關概念 一、數組對象是如何處理對象元素的引用計數問題 // // main.m // 26_NSArrayMemeryManager // // Created by waterfoxjie on 15-03-29. // Copyright (c) 2015年 waterfoxjie. All rights
Time of Update: 2015-03-29
標籤:一。基礎資料型別 (Elementary Data Type) 1.一般的電腦語言在定義變數的時候,需要提供給兩個內容:類型和名字。 比如:int myClassID; 2.在Xcode中,無論你使用的是GCC編譯器還是LLVM編譯器,如果我們沒有為整型變數的值進行初始化,在編譯的過程中,編譯器都會自動為其附上值0. 3.整數類型:三種。int、short、long。 浮點數類型:兩種:float、double。 字元類型:一種:char。 指標類型:*
Time of Update: 2015-03-29
標籤:1.相容性 OC是一種物件導向的C語言,在OC的代碼中可以有C和C++語句,它可以調用C函數,也可以通過C++對象存取方法。2.字串 OC通常不使用C語言風格的字串。大多數情況下(CoreFoundation中的字串是C語言的)是使用Foundation架構的NSString類型的字串。NSString類提供了字串的類封裝,支援Unicode、printf風格的格式化工具等等。它是在普通的雙引號字串前放置一個@符號。如:NSString *myString =
Time of Update: 2015-03-28
標籤:一、OC簡介 (一)、Objective-C與C的淵源 Objective-C誕生於 20 世紀 80 年代,由Brad Cox 發明,意在將流行的、可移植的 C 語言與優雅的 Smalltalk 語言結合在一起。Objective-C 是 C 語言的一個擴充集,它以 C 語言為基礎,在語言中添加了一些微妙但意義重大的特性。蘋果公司的 iphone 平台採用 Objective-C 做為 native language
Time of Update: 2015-03-21
標籤:理解Method Swizzling是學習runtime機制的一個很好的機會。在此不多做整理,僅翻譯由Mattt Thompson發表於nshipster的Method Swizzling一文。Method Swizzling是改變一個selector的實際實現的技術。通過這一技術,我們可以在運行時通過修改類的分發表中selector對應的函數,來修改方法的實現。例如,我們想跟蹤在程式中每一個view controller展示給使用者的次數:當然,我們可以在每個view
Time of Update: 2015-03-21
標籤:前面幾篇基本介紹了runtime中的大部分功能,包括對類與對象、成員變數與屬性、方法與訊息、分類與協議的處理。runtime大部分的功能都是圍繞這幾點來實現的。本章的內容並不算重點,主要針對前文中對Objective-C Runtime Reference內容遺漏的地方做些補充。當然這並不能包含所有的內容。runtime還有許多內容,需要讀者去研究發現。super在Objective-C中,如果我們需要在類的方法中調用父類的方法時,通常都會用到super,如下所示:@interface
Time of Update: 2015-03-21
標籤: Objective-C中的分類允許我們通過給一個類添加方法來擴充它(但是通過category不能添加新的執行個體變數),並且我們不需要訪問類中的代碼就可以做到。Objective-C中的協議是普遍存在的介面定義方式,即在一個類中通過@protocol定義介面,在另外類中實現介面,這種介面定義方式也成為“delegation”模式,@protocol聲明了可以唄其他任何方法類實現的方法,協議僅僅是定義一個介面,而由其他的類去負責實現。在本章中,我們來看看r
Time of Update: 2015-03-21
標籤:在前面一篇文章中,我們介紹了Runtime中與類和對象相關的內容,從這章開始,我們將討論類實現細節相關的內容,主要包括類中成員變數,屬性,方法,協議與分類的實現。本章的主要內容將聚集在Runtime對成員變數與屬性的處理。在討論之前,我們先介紹一個重要的概念:類型編碼。類型編碼(Type
Time of Update: 2015-03-21
標籤:前面我們討論了Runtime中對類和對象的處理,及對成員變數與屬性的處理。這一章,我們就要開始討論Runtime中最有意思的一部分:訊息處理機制。我們將詳細討論訊息的發送及訊息的轉寄。不過在討論訊息之前,我們先來瞭解一下與方法相關的一些內容。基礎資料類型SELSEL又叫選取器,是表示一個方法的selector的指標,其定義如下:typedef struct objc_selector
Time of Update: 2015-03-20
標籤:#import <Foundation/Foundation.h>NSInteger codeLineCount(NSString *path){ //1.擷取檔案管理者,這是一個單例 NSFileManager *manage = [NSFileManager defaultManager]; //2.判斷檔案夾or檔案 BOOL dir = NO;
Time of Update: 2015-03-20
標籤:在Java中,特別是一個標準的POJO類,我們定義了一些屬性,然後針對每個屬性產生相應的getter和setter.例如:package com.demo;/** * 手機類 * @author liuzc */public class Phone {private String color; //顏色private String os; //系統private String brand; //品牌/******* Getter & Setter