block可以完全作為delegatge的替代品,而且使用簡單,不需要寫太多@protocol來定義介面。但使用有以下幾點注意。(1) block不是Object對象,所以對retain無效,要想保留block生命週期,最好通過copy來實現,當然copy後,要記得release。如果不想手動管理,就通過[[[testBlock] copy] autorelease]來管理。(2)我們知道一般被block的應用的對象,retainCount會自動加一,為了打破這種 retain
在Xcode中,Debug時,不能像eclipse ,或VS那些整合開發那樣,能直接查看變數的值。那怎麼在調試的時候查看XCode的變數呢?有一些方法的。1、建立一個Single View App在viewDidLoad裡添加些代碼:- (void)viewDidLoad{ [super viewDidLoad]; NSDictionary *dic = [NSDictionary
前面有一篇博文iOS學習之Tab Bar的使用和視圖切換 這是在AppDelegate裡使用Tabbar,這樣的程式開啟就是TabbarView了,有時候我們需要給程式做一些協助頁面,或者登入頁面,之後才跳轉到tabbar View裡,或者後面的頁面才使用Tabbar的,那這樣怎麼實現呢?我們建立一個視圖,然後在這個視圖通過[selfpresentModalViewController : tabBaranimated:YES];跳轉來實現。
iOS學習之UINavigationController詳解與使用(一)添加UIBarButtonItem是上篇,我們接著講UINavigationController的重要作用,頁面的管理和切換。1、RootView 跳到SecondView首先我們需要新一個View。建立SecondView,按住Command鍵然後按N,彈出建立頁面,我們建立SecondView 2、為Button
UITapGestureRecognizer與UIPanGestureRecognizer應用: 一:UITapGestureRecognizer應用:- (void)singleOne:(UITapGestureRecognizer *)sender { }//將相應事件發生時的動作寫入函數- (void)singleTwo:(UITapGestureRecognizer *)sender { }- (void)doubleOne:(UITapGestureRecognizer
我們在開發中很多時候要設定UIlabel,UIbutton,UItextfield的字型,這個時候我們就需要用到UIFont,下面簡單介紹一下UIFont的用法,僅供參考。UIFont用於擷取和設定字型資訊。這個類提供用於輸出的字型的屬性和字型資訊。我們可以把其對象像參數一樣傳入函數中。一般而言我們不需要用alloc,int方法初始化UIFont對象,我們用UIFont大部分的時候是用其類方法,這些方法會設定對象的屬性,且返回一個字型對象。例如: _centerLabel =
IOS支援三個層次的線程編程,從底層到高層(層次越高使用越方便,越簡潔)分別是:1:Thread;2:Cocoa Operations;3:Grand Central Dispatch;簡介:Thread是抽象層次最低的,另外兩種線程應用給予thread進行了封裝,對於程式員而言,thread相對麻煩,需要程式員管理線程周期,但是效率最高。thread包含兩種:Cocoa threads——使用NSThread 或直接從 NSObject 的類方法
我想用百度地圖API做一個Demo,下面是我的整個流程,希望能夠給大家帶來些許參考;首先開啟下面網址,仔細閱讀移動平台API之 IOS開發 指南http://dev.baidu.com/wiki/imap/index.php?title=iOS%E5%B9%B3%E5%8F%B0/%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97在:點擊擷取密鑰(API Key)進入新的頁面在新的頁面你需要填寫
NSSet,NSMutableSet,和NSCountedSet類聲明編程介面對象的無序集合(散列儲存:在記憶體中的儲存位置不連續)。而NSArray,NSDictionary類聲明編程介面對象的有序集合(有序儲存:在記憶體中的儲存位置連續)。NSSet,NSMutableSet;
目前我們在做IOS開發中絕大多數用的是GoogleMap地圖,IOS本身內建的也是googleMap,但是如果我們希望在地圖上即時顯示路況資訊等部分功能,googlemap則沒有,所以有時候我們可以應用百度地圖做應用程式。下面我簡單介紹一下BMapKit的應用:一:首先我們有一點與用googlemap開發的不同,需要建立BMKMapManager管理應用程式的map,如果沒有這個類,地圖則不能夠顯示。下面紅色的字型是自己在百度官方申請的地圖api——key;BMKMapManager
看起來蠻簡單的功能,給UITableView增加一個tap的手勢,響應一個方法來退出鍵盤就行了,於是很有了下面代碼: //增加tap手勢,點擊使退出鍵盤 UITapGestureRecognizer * tapGesture = [[UITapGestureRecognizeralloc]initWithTarget:selfaction:@selector(dismissKeyBoard)];
這個問題其實,遇到幾次了,事情比較多,就沒去仔細研究,解決方案也是很暴力的直接加上8小時。這次遇到了,調試了下,發現其實不是那麼回事。NSDate * nowDate = [NSDate
自從iPhone4 支援多任務後,我們需要更加仔細處理記憶體不足的情形。如果使用者運行我們程式的時候,後台還跑著N個軟體,那前台啟動並執行iphone 程式就很容易收到記憶體不足的警告。 通常情況下,iOS在記憶體不足時會給使用者一次處理記憶體資源的機會。當我們的程式在第一次收到記憶體不足警告時,應該釋放一些不用的資源,以節省部分記憶體。否則,當記憶體不足情形依然存在,iOS再次向我們程式發出記憶體不足的警告時,我們的程式將會被iOS kill掉。
iOS6來了!iOS6更先進的功能可以為開發人員提供更好更有效開發方式;比如大方有型的設計;在MapKit架構內使用向量式引擎(vector-based engine)開發的地圖;可以存放各類票據、優惠卡、登機證的Passbook;整合了分享功能的Facebook;新的camera API和 提醒(Reminders)功能改進;以及應用內購和Game Center等技術可以幫你打造一款最好的iOS應用。 下載和安裝 安裝iOS 6 使用Xcode 4.5開發apps為你的蘋果裝置升級iOS 6
不管建立iOS的哪種類型的應用程式,有幾個基本的設計模式和技術在寫代碼前必須你必須知道。在IOS,系統架構為應用程式提供了最重要的基礎設施,在大多數情況下,只能通過系統架構來調用底層的硬體。反過來,架構也使用了很多特別的設計模式,開發應用程式前,我們是假設你很熟悉這些設計模式的。要知道系統怎麼支援應用程式的,那就得先理解這些設計模式,這非常重要。你必須知道的最重要的幾種設計模式:Model-View-Controller
文章目錄 一種是用定義好的兩個子類:另一種是繼承NSOperation 前一篇 iOS多線程編程之NSThread的使用介紹三種多線程編程和NSThread的使用,這篇介紹NSOperation的使用。使用 NSOperation的方式有兩種,一種是用定義好的兩個子類:NSInvocationOperation 和 NSBlockOperation。另一種是繼承NSOperation如果你也熟悉Java,NSOperation就和java.
在iOS的程式中,Tab Bar的使用率很高,幾個視圖需要切換的時候,就用到tabbar。今天的程式實現的效果是這樣的,底部有幾個tab Item,對應的有幾個視圖,切換tab Item,切換到對應的視圖。實現效果如下: 為了更好理解使用用tabbar和切換視圖,我們建立一個Empty Application。1、開啟Xcode ,建立項目2、建立View Controller 在項目上按花鍵+N建立新檔案,建立 Objective-C class 檔案,按Next按鈕,subClass
接著iOS學習之Table View的簡單使用 這篇,這裡主要講UITableView 中的Cell的操作,包括標記、移動、刪除、插入。為了簡單快捷,直接從原來那篇的代碼開始,代碼:http://download.csdn.net/detail/totogo2010/4361870要進行資料的操作了,把代碼裡的不可變數組改成可變的:NSArray *list -》NSMutableArray
接上篇iOS學習之UIPickerView控制項的簡單使用 接著上篇的代碼 http://download.csdn.net/detail/totogo2010/4391870 ,我們要實現的效果如下:當選擇左邊的一級選項時,左邊展示一級選項裡含有的二級選項,選擇後顯示在TextField裡。如何?呢?建立一個和左邊的列表key對應的數組,當選擇這個key時,重新整理左邊UIPickerView部分的內容顯示對應數組的資料,選擇時,找到兩個UIPickerView組件rowIndex,找出資料,
1、iOS程式名稱國際化1.1 建立一個Single View app模版項目,命名為Localization。1.2 建立後,可以看到工作目錄結構檔案如下,單擊InfoPlist.strings,查看右邊的屬性,在Localization欄添加語言。 1.3