Time of Update: 2015-08-10
標籤:02.第一個OC語言類在java語言中,建立一個類只需要一個檔案,而在oc語言中,建立一個類需要兩個檔案.m檔案和.h檔案。.h檔案是聲明類,用來聲明成員變數和方法。用關鍵詞@interface來修飾,以@end結尾。.m檔案是實作類別,用來實現成員變數和方法,用關鍵詞@implementation來修飾,以@end結尾。方法:在oc語言中方法都需要用+或-來表明方法的類型。+表示的是靜態方法。-表示的是動態方法。.h檔案中的所有方法都是public,不能更改。成員變數:成員變數按範圍不同
Time of Update: 2015-10-27
標籤:蘋果官方文檔:不穩定的傳送門 讀書筆記共有以下幾篇,其他的知識點不重要或者已經熟悉不需記錄。《Programming with Objective-C》第三章 Working with Objects《Programming with Objective-C》第四章 Encapsulating Data《Programming with Objective-C》第五章 Customizing Existing Classes《Programming with Objective-
Time of Update: 2015-10-27
標籤: //字典:(關鍵字 值)//插入代碼字太小// NSArray *array = [NSArray array];//空數組// NSDictionary *dictionary = [NSDictionary dictionary];//空字典
Time of Update: 2015-10-27
標籤:Object和普通變數的區別If you’re used to using terms like the stack and the heap, a local variable is allocated on the stack, while objects are allocated on the heap.- (void)f{ int a = 2; //Stack NSString *s = @"Hello";
Time of Update: 2015-10-26
標籤:在MRC環境下,假定CTRoom對象是CTPerson的一個成員變數,那麼修改CTRoom對象時應注意,代碼如下:- (void) setRoom:(CTRoom *) room{ //需判斷新舊值是否相等,一旦相等則[_room release]等價於[room release],那麼[room retain]將拋出異常。 if(_room != room){ [_room release]; //釋放舊值 _room = [room
Time of Update: 2015-08-28
標籤:引用計數器 每個OC對象都有一個佔4個位元組儲存空間的引用計數器當使用或建立一個對象時,新對象的引用計數器預設是1 retain:可以使引用計數器+1release:可以是引用計數器-1retainCount:獲得當前的引用計數器的值當對象被銷毀時,會重寫dealloc方法-(void)dealloc{ // 這句必須放在最後面 [super
Time of Update: 2015-08-27
標籤: 主要功能:UIContol(控制項是所有控制項的基類 如:(UIButton)按鈕主要用於與使用者互動,通常情況下我們不會直接使用UIControl,而是子類化它。常用屬性:BOOL enabled 空間預設是啟用的,要禁用控制項,可以將enabled屬性設定為NO,這樣將導致控制項會略任何觸摸控制項事件。被禁用後,控制項還可以用不同的方式顯示自己,比如變成灰色不可用。由空間的子類完成的,這個屬性卻存在於UIControl中。執行個體示範:UIButton *button
Time of Update: 2015-08-20
標籤:本文目錄一.開啟Xcode,建立Xcode項目二.選擇最簡單的命令列項目三.輸入項目名稱,選擇Foundation架構進行建立項目四、點擊Run,運行項目說明:這個Objective-C專題,是學習iOS開發的前奏,也為了讓有物件導向語言開發經驗的程式員,能夠快速上手Objective-C。如果你還沒有編程經驗,或者對Objective-C、iOS開發不感興趣,請忽略。學習本專題之前,建議先學習C語言專題。回到頂部一.開啟Xcode,建立Xcode項目 回到頂部二.選擇最簡單的命
Time of Update: 2015-08-20
標籤:說明:這個Objective-C專題,是學習iOS開發的前奏,也為了讓有物件導向語言開發經驗的程式員,能夠快速上手Objective-C。如果你還沒有編程經驗,或者對Objective-C、iOS開發不感興趣,請忽略。學習本專題之前,建議先學習C語言專題。在上一講,已經建立了第一個OC程式,這講就來解析它內部的代碼。查看項目結構可以發現這個程式中只有一個源檔案:main.m開啟main.m檔案,代碼如下 1 #import <Foundation/Foundation.h> 2
Time of Update: 2015-08-17
標籤:特殊類型的封裝類:數組、結構體(OC內部的、自訂的)、指標 1 // 2 // main.m 3 // 05-NSValue 4 // 5 // Created by ma c on 15/8/17. 6 // Copyright (c) 2015年 bjsxt. All rights reserved. 7 // 8 9 #import <Foundation/Foundation.h>10 typedef struct11 {12 char *name;1
Time of Update: 2015-07-31
標籤: 對於Objective-C 的數組 NSArray 只能存對象,不能存取基礎資料型別 (Elementary Data Type),如 整型int 、浮點型float、 雙精確度浮點型double、 字元型char,但Objective-C為了能夠將基礎資料型別 (Elementary Data Type)存到數組,有一個類型叫做NSNumber 的類型,叫做數字對象。(有些字詞用的不是很準確,待找到合適的詞定會修改過來)用法如下: // 將 整型int
Time of Update: 2015-07-23
標籤:objective-c xcode 文法 迴圈 for 在OC中,除了while這種迴圈方式外,還有另外for迴圈和do-while迴圈,它們在不同的商務邏輯下會有不同的作用。可以和C語言和Java對比著學習。(一)代碼一:int main(int argc,
Time of Update: 2015-07-21
標籤:objective-c runtime 內容列表物件模型(結構定義,類對象、元類和執行個體對象的關係)訊息傳遞和轉寄機制runtime系統功能理解物件模型結構定義對象(Object): OC中基本構造單元 (building block),用於儲存和傳遞資料。可以在objc.h的檔案中尋找到對象結構的定義,如下所示即對象結構為Class類型的isa,而Class是
Time of Update: 2015-07-21
標籤:oc記憶體管理
Time of Update: 2015-07-19
標籤:NSRange (location length)"I love oc"NSRange r = NSMakeRange(2,4) NSString *str = @"i love you";NSRange range = [str rangeofString:@"love"];NSLog(@"loc = %ld, length = %ld",range.location, range.length);找不到length = 0,location = NSNotFound == -
Time of Update: 2015-07-18
標籤: http://www.justinyan.me/post/1306一、問題起源一切起源於Apple官方文檔裡面關於單例(Singleton)的示範代碼:Creating a Singleton Instance.主要的爭議集中在下面這一段:?0102030405060708091011121314static MyGizmoClass *sharedGizmoManager = nil;+
Time of Update: 2015-07-13
標籤:mystra objective-c nsmutablearray 修改元素 NSMutableArray修改元素, 使用-insertObject: atIndex: 和-replaceObjectAtIndex: withObject: 都可以, 即通過插入(insert)和替換(replace)可以實現. 樣本:// 減少按鈕監聽- (void)
Time of Update: 2015-07-13
標籤:mystra objetive-c textfield 限制輸入長度 UITextField類沒有最大長度屬性, 需要通過Delegate設定. 1.繼承UITextFieldDelegate介面.@interface MYClass () <UITextFieldDelegate>@end2.設定介面.// timesField:
Time of Update: 2015-07-13
標籤:mystra objective-c nsinteger nsstring NSInteger不是對象, 轉換為long匹配64位系統, 再組成字串(%ld).NSString *inStr = [NSString stringWithFormat: @"%ld", (long)month];Note that on 64-bit processors,
Time of Update: 2015-07-13
標籤:mystra objective-c 容器 nsinteger 容器(NSMutableArray, NSMutableDictionary)的擷取元素方法objectForKey:返回id類型, 轉換NSInteger類型, 使用integerValue.// newQuestion is an NSDictionary defined