標籤: 本文轉自:http://blog.csdn.net/yuquan0821/article/details/6646400/ 一,概述KVO,即:Key-Value Observing,它提供一種機制,當指定的對象的屬性被修改後,則對象就會接受到通知。簡單的說就是每次指定的被觀察的對象的屬性被修改後,KVO就會自動通知相應的觀察者了。二,使用方法系統架構已經支援KVO,所以程式員在使用的時候非常簡單。1. 註冊,指定被觀察者的屬性,2. 實現回調方法3.
標籤:首先說一下他們兩的作用,nil就是把一個對象的指標置為空白,只是切斷了指標與記憶體中對象的聯絡,它對記憶體的釋放沒有什麼作用;而release才是真正用於記憶體釋放的,release後系統會將該塊記憶體標記為可用(可重新分配)。所以nil並沒有釋放記憶體,只有release才是真正釋放記憶體。 二者使用順序,如果沒有release就直接nil,那麼雖然不會出錯(release一個null
標籤:一、知識點: 1、雙模型的嵌套使用 2、Button的對齊 3、最佳化UITableView的載入 4、layoutSubview的使用 5、cell的摺疊代理二、雙模型的嵌套定義:注意是將self.friends 尚未字典轉模型進行的操作二、cell的重用定義方式方法一QQCell *cell =[tableView dequeueReusableCellWithIdentifier:identifier]; /**
標籤:Cocoa是在Mac OS X系統上原生的一個編譯環境。他包含兩個架構,其實就是一系列的類庫,Foundation和AppKit。在你的iPhone等掌上裝置上,使用的則是他的一個子類 - Cocoa Touch。他所支援的Foundation架構與Cocoa相同,但他的使用者圖形類庫為UIKit,它是為掌上裝置特殊設計,提供了你裝置上的介面。Cocoa Touch與Cocoa一個比較鮮明的區別就是Cocoa Touch並不支援記憶體回收機制,這就意味著你必須在你的代碼裡管理好你的記憶體。
標籤:一、知識點: QQ聊天介面 雙模型的使用(dataModel和frameModel) UITextField的使用 通知的使用 展開圖片的兩種方法(slicing/image對象的resizeableImageWithCapInsets屬性) 枚舉 方法的抽取(相同的拿出,不同的部分作為參數)二、設定tableview的基本格式1)定義tableview基本numberOfSectionsInTableView:設定塊numberOfRowsInSection:設定每塊對應的
標籤:說明:這個Objective-C專題,是學習iOS開發的前奏。也為了讓有物件導向語言開發經驗的程式猿,可以高速上手Objective-C。假設你還沒有編程經驗,或者對Objective-C、iOS開發不感興趣,請忽略。學習本專題之前,建議先學習C語言專題。在上一講,已經建立了第一個OC程式,這講就來解析它內部的代碼。查看項目結構能夠發現這個程式中僅僅有一個源檔案:main.m開啟main.m檔案,代碼例如以下 1 #import
標籤: Objective-C中,ARC下的 strong和weak指標原理解釋提示:本文中所說的"執行個體變數"即是"成員變數","局部變數"即是"本地變數" 一、簡介ARC是自iOS 5之後增加的新特性,完全消除了手動管理記憶體的煩瑣,編譯器會自動在適當的地方插入適當的retain、release、autorelease語句。你不再需要擔心記憶體管理,因為編譯器為你處理了一切。注意:ARC 是編譯器特性,而不是 iOS
標籤: Objective-C在C語言的基礎之上,加入了自己的一些獨特的特性,而且在Objective-C中相容C語言原有的用法。在Objective-C中,實現Hello World和C語言有一定的區別,如下所示:#import <Foundation/Foundation.h>//尋找Foundataion架構中的標頭檔Foundation.h標頭檔int main(int argc, const char * argv[]) {
標籤:前言:因為本人要高仿一個app,從app中解壓asserts得到的所有圖片檔案,檔案名稱都帶有~iPhone這個幹擾的名字,為了去除這個~iPhone這個字串,所以本人寫了個簡答的批量更改所有檔案名稱的程式。程式員就是應該會利用程式來幫自己偷懶,因為用到的很多方法不是很熟悉,也是花了點時間去熟悉NSFileManager的一些方法,所以寫下這個筆記做個筆記,省的下次又需要就忘記了方法。 我的基本需求,在囉嗦一下下哈:一個檔案目錄下有上百個圖片檔案,檔案名稱都帶有~iPhone。寫
標籤:一、UITableView的簡單使用顯示要素: 1、顯示多少給區組 2、顯示多少行資料 3、每行顯示什麼內容代理不會提醒你有什麼方法沒調用,但是UITableViewDataSource會 1)用代碼建立一個UITableViewUITableView *tableview =[[UITableView alloc]initWithFrame:CGRectMakr(0,0,[UIScreen mainScreen].bounds.size.width,[UIScreen
標籤:objective-C五大特性:完全相容C物件導向單繼承(OC裡的函數均為虛函數、通過類別和協議實現偽多繼承)動態綁定(dynamic_cast 把基類指標轉化為子類指標的時候會自動做判斷、ID類型 表示任意類型的對象,實現動態綁定)訊息機制(SmallTalk語言 解決null 指標錯誤崩潰)#import <Foundation/Foundation.h>//:表示公有繼承@interface Person : NSObject{
標籤:1、隨機數的使用 1)、arc4random() 比較精確不需要產生隨即種子 使用方法 : 通過arc4random() 擷取0到x-1之間的整數的代碼如下: &
標籤:Associated Objects 主要有以下三個使用情境:1、為現有的類添加私人變數以協助實現細節2、為現有的類添加公有屬性;3、為 KVO
標籤:我們平時做地圖定位,主要是靠經緯度來準確定位某個位置。但是,我們是人啊,我們不是衛星啊。使用者在地圖上查一個地方,我們總不能告訴他,這個地方是東經多少度,北緯多少度吧。咱們好歹得告訴人家個地名不是?這就是我們今天說的地理編碼和地理反編碼。地理編碼:你說個地名,比如“西湖”,我們給你返回它的經緯度,然後你通過查出來的這個經緯度去定位反地理編碼:我告訴你一個經緯度,你通過經度緯度返回地名。最好在插個圖釘在地圖上就更好了,啥叫圖釘,咱們以後再說。首先,我的介面是這個樣紙的
標籤:類型成員 Type Member結構體 struct 的成員很簡單,只有變數。類的成員就很多了: 資料成員 data member 描述對象(本講重點) · 執行個體變數 instance variable · 屬性 property 函數成員 function member · 方法
標籤: 大家好,我是kellybaby。今天開始給大家介紹Objective-c 語言。 身邊的同學朋友說,我給他們講解的東西總是很白話,通俗易懂,希望我的這種白話講解程式設計語言的方式能夠幫到大家。 在這裡,我把我的知識分享給大家,也是對我自己擁有的知識的總結。
標籤:原文地址:http://onevcat.com/2013/05/talk-about-warning/ 一個有節操的程式員會在乎自己的代碼的警告,就像在乎飯碗邊上有只死蟑螂那樣。 ——@onevcat重視編譯警告現在編譯器有時候會很吵,而編譯器給出的警告對開發人員來說是很有用的資訊。警告不會阻止繼續編譯和連結,也不會導致程式不能運行,但是很多時候編譯器會先你一步發現問題所在,對於Objective-C來說特別如此。Clang不僅對於明顯的錯誤能夠提出警告(
標籤:1.NSLog(@“hello world!”);//列印語句的函數,需要列印的字串放在@之後。NSLog(@“are %d and %d different?%@”,4,4,@”YES”);2.方括弧有兩個作用:1)訪問數組元素2)用於通知某個對象執行什麼,在方括弧內第一項是對象,其餘部分是需要對象執行的操作。例如,[shape draw]的含義為通知shape執行draw方法。3.方法調用:類名 方法名:參數注意:
標籤:There are only two hard things in Computer Science: cache invalidation and naming things.在電腦科學中只有兩件難事:緩衝失效和命名。– Phil
標籤:同步非同步並行串列工作群組時間等待Dispatch Queue有兩種:1.Serial Dispatch Queue,串列Queue,按隊列順序每次只能執行一個該線程中追加的任務(可通過建立多個串列queue實現並存執行任務(會降低效能))串列queue可解決多個線程更新相同資源導致資料競爭的問題,讓操作該資源的任務放在同一個串列queue中執行即可2.Concurrent Dispatch Queue,並行Queue,該線程中追加的任務可同時執行擷取Dispatch