原创 iOS開發之代理模式

iOS開發最常用到的設計模式恐怕就是代理模式了,剛開始學的時候很迷茫,不知道代理類中的代理方法是怎麼被調用的,以爲就是系統自己隨便調用的, 老師講了代理模式以後還是不明白,問老師發現老師比我還暈。今天看了c++的設計模式,突然明白了,下面

原创 iOS開發之文件和路徑

每一個App都是一個Island 每一個與文件系統交互的應用程序都被限制在app沙箱的路徑下。安裝應用程序時,ios爲每一個程序創建一個 home路徑和幾個重要的文件夾,documents,library和tmp。iOS拒絕應用程序訪問自

原创 NSInvocationOperation多線程教程

多線程編程是防止主線程堵塞,增加運行效率等等的最佳方法。而原始的多線程方法存在很多的毛病,包括線程鎖死等。在Cocoa中,Apple提供了 NSOperation這個類,提供了一個優秀的多線程編程方法。 本次介紹NSOperation的

原创 UIView自定義繪圖

每一個UIViewController都有一個默認的UIView,通常我們在xib文件中編輯的就是在默認的UIView上。 也可以自定義自己的UIView子類,然後加入到UIViewController中。 建立一個UIView子類Gra

原创 使用開源代碼IOS進行SOcket編程

iphone的標準推薦CFNetwork C庫編程.但是編程比較煩躁。在其它OS往往用類來封裝的對Socket函數的處理。比如MFC的CAsysncSocket.在iphone也有類似於開源項目.cocoa AsyncSocket庫,

原创 runloop

首先看兩個runloop的事例。 第一個: #include <CoreFoundation/CoreFoundation.h> static void _perform(void *info __unused)

原创 cocoa二進制數據編程

數據對象(data object): 二進制數據能被包裝進Foundation和Core Foundation數據對象中,數據對象提供了操作數據的面向對象封裝。 數據對象是橋接對象(bridged objects),所以你能在Founda

原创 OPenGL基本概念

OPenGL函數語法: OPenGL函數都加了前綴“gl”,常量以“GL_“開頭,都是大寫字母。OpenGL很多函數的後綴表示參數數據類型,比如glVertex3f()後面的”3f“表示函數形參有3個,都是float類型。 函數後綴和參數

原创 URL下載系統編程

NSURL類提供了操作URLs的資源的能力。下面是NSURL系統中的類。 NSURLConnection: 爲了從URL下載內容,應用程序需要提供至少下面的代理對象。connection:didReceiveResponse con

原创 apue學習之線程創建

線程標識: 每個進程有一個進程ID,每一個線程也有一個線程ID,進程ID在系統中是唯一的,,線程ID不同,它只在所屬的進程環境中才有效。 pthread_t在不同的系統中實現是不一樣的,mac系統中它是一個結構體類型指針,所以要用函數來比

原创 iphone多線程練習之火車售票模擬

#import <UIKit/UIKit.h> @interface LeeAppDelegate : UIResponder <UIApplicationDelegate>{ int tickets; int coun

原创 CFType

Memory Management CFGetAllocator CFGetRetainCount CFMakeCollectable CFRelease CFRetain Determining Equality CFEqua

原创 CAAnimation

動畫對象可以在一段時間內持續驅動屬性值的變化。可以將動畫對象加入CALayer實例,一旦加入,層就會開始執行動畫指令。 動畫對象CAAnimation是抽象類,必須使用它的某個具體子類。 CAPropertyAnimation是CAAni

原创 OpenGLES入門1

GLuint viewRenderbuffer,viewFramebuffer;      //兩個無符號整形代表opengles的幀緩衝區和渲染緩衝區 GLuint depthRenderbuffer                

原创 輸入輸出函數

當學習完c語言的語法以後,要想深入學習,那就好學習c語言的標準函數庫了。其中IO函數庫是我們最長用到了函數庫了。 像我們開始學習的時候就有printf()函數等等,這些打印輸入函數都屬於IO函數庫。下面是我學習時認爲重要做個筆記: 1.錯