Time of Update: 2018-12-05
block可以完全作為delegatge的替代品,而且使用簡單,不需要寫太多@protocol來定義介面。但使用有以下幾點注意。(1) block不是Object對象,所以對retain無效,要想保留block生命週期,最好通過copy來實現,當然copy後,要記得release。如果不想手動管理,就通過[[[testBlock] copy] autorelease]來管理。(2)我們知道一般被block的應用的對象,retainCount會自動加一,為了打破這種 retain
Time of Update: 2018-12-05
單例是一種類,該類只能在第一次用的時候執行個體化一個對象,後期直接調用此對象(有點共用的意思)。在Foundation架構中比如NSFileManger和NSNotificationCenter,分別通過它們的類方法defaultManager和defaultCenter擷取。儘管不是嚴格意義的單例,這些類方法返回一個可以在應用的所有代碼中訪問到的類的共用執行個體。使用Objective-C實現單例模式的最佳方式向來有很多爭論,開發人員似乎每幾年就會改變他們的想法。他們也引入了一個很適合用於實現
Time of Update: 2018-12-05
當你在seachBar中輸入字母之前的時候,只是用滑鼠選中searchBar的時候,終端輸出如下:(這個時候調用先shouldBeginEditing,之後調用didBeginEditing,)當你希望選中UISearchBar的時候,鍵盤自動調用載入到介面,你需要將下面函數的傳回值設定為YES;- (BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar { NSLog(@"shouldBeginEditing");
Time of Update: 2018-12-05
UITapGestureRecognizer與UIPanGestureRecognizer應用: 一:UITapGestureRecognizer應用:- (void)singleOne:(UITapGestureRecognizer *)sender { }//將相應事件發生時的動作寫入函數- (void)singleTwo:(UITapGestureRecognizer *)sender { }- (void)doubleOne:(UITapGestureRecognizer
Time of Update: 2018-12-05
今天做項目的時候遇到這個問題,就分享一下,我這個應該僅僅是導致這個錯誤發生的原因之一。但也希望記錄下來,供大家參考,如果你們也遇到這樣的問題,同時是其他原因引起的,請發Email:sanpintian@gmail.com完整的錯誤碼:錯誤產生的原因是:上面四個輸入框都是UITextView,當點擊登陸的時候,如果四個輸入框任何一個為空白,就會報錯。這就需要我們將自己的程式健壯性加以設計,對UITextView進行設定或者對使用者提醒。希望對你有一點協助。
Time of Update: 2018-12-05
我們在開發中很多時候要設定UIlabel,UIbutton,UItextfield的字型,這個時候我們就需要用到UIFont,下面簡單介紹一下UIFont的用法,僅供參考。UIFont用於擷取和設定字型資訊。這個類提供用於輸出的字型的屬性和字型資訊。我們可以把其對象像參數一樣傳入函數中。一般而言我們不需要用alloc,int方法初始化UIFont對象,我們用UIFont大部分的時候是用其類方法,這些方法會設定對象的屬性,且返回一個字型對象。例如: _centerLabel =
Time of Update: 2018-12-05
以下內容翻譯自:http://code.google.com/p/cocoaasyncsocket/CocoaAsyncSocket支援tcp和udp。其中:AsyncSocket類是支援TCP的AsyncUdpSocket是支援UDP的AsyncSocket是封裝了CFSocket和CFSteam的TCP/IP
Time of Update: 2018-12-05
當我們建立了一個項目的時候,可以在她的targets的summary(摘要概要)裡面設定其表徵圖等其他資訊:App Icons:Icon.png 預設表徵圖,像素57*57,應用程式在iphone首頁面顯示的表徵圖,添加圖片之後,在bundle自動更改圖片名為Icon.png;Icon@2x.png 預設高清表徵圖,像素114*114,應用程式在ipad首頁面顯示的表徵圖。Launch Images:Default.png
Time of Update: 2018-12-05
IOS支援三個層次的線程編程,從底層到高層(層次越高使用越方便,越簡潔)分別是:1:Thread;2:Cocoa Operations;3:Grand Central Dispatch;簡介:Thread是抽象層次最低的,另外兩種線程應用給予thread進行了封裝,對於程式員而言,thread相對麻煩,需要程式員管理線程周期,但是效率最高。thread包含兩種:Cocoa threads——使用NSThread 或直接從 NSObject 的類方法
Time of Update: 2018-12-05
我想用百度地圖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)進入新的頁面在新的頁面你需要填寫
Time of Update: 2018-12-05
在應用UIBUtton的時候我們有時需要同時設定圖片和文字,下面代碼僅供參考: UIButton *_backButton = [UIButtonbuttonWithType:UIButtonTypeCustom]; [_backButton setFrame:CGRectMake(12,8, 64, 28)]; [_backButton setTitle:@"返回"forState:UIControlStateNormal];
Time of Update: 2018-12-05
NSSet,NSMutableSet,和NSCountedSet類聲明編程介面對象的無序集合(散列儲存:在記憶體中的儲存位置不連續)。而NSArray,NSDictionary類聲明編程介面對象的有序集合(有序儲存:在記憶體中的儲存位置連續)。NSSet,NSMutableSet;
Time of Update: 2018-12-05
目前我們在做IOS開發中絕大多數用的是GoogleMap地圖,IOS本身內建的也是googleMap,但是如果我們希望在地圖上即時顯示路況資訊等部分功能,googlemap則沒有,所以有時候我們可以應用百度地圖做應用程式。下面我簡單介紹一下BMapKit的應用:一:首先我們有一點與用googlemap開發的不同,需要建立BMKMapManager管理應用程式的map,如果沒有這個類,地圖則不能夠顯示。下面紅色的字型是自己在百度官方申請的地圖api——key;BMKMapManager
Time of Update: 2018-12-05
UIImagePickerController概述:UIImagePickerController
Time of Update: 2018-12-05
5月份的時候,開始研究iOS平台上的在應用程式內購買技術。以前,如果要做一個付費應用,需要做一個Lite簡易版。使用者在購買之前,可以通過Lite版體驗一下,再決定是否付費購買。但這種方式隨著iOS平台的普及,應用的增多,尤其是遊戲的增多,簡易方式越來越不適應新的需求。而且這種方式無論是蘋果公司還是開發人員,都需要更多的維護成本。後來蘋果公司實現了在應用程式內購買技術,這種技術不需要開發人員提供簡易版本,而是提供一個版本,在應用內沒有付費購買的情況下,有些功能或者特性是受限制的;只有通過點擊應用
Time of Update: 2018-12-05
方法1:使用NSTimer來實現 主要使用的是NSTimer的scheduledTimerWithTimeInterval方法來每1秒執行一次timeFireMethod函數,timeFireMethod進行倒計時的一些操作,完成時把timer給invalidate掉就ok了,代碼如下: secondsCountDown = 60;//60秒倒計時 countDownTimer = [NSTimer scheduledTimerWithTimeInterval:1
Time of Update: 2018-12-05
一:確認網路環境3G/WIFI 1. 添加源檔案和framework 開發Web等網路應用程式的時候,需要確認網路環境,串連情況等資訊。如果沒有處理它們,是不會通過Apple的審(我們的)查的。 Apple 的 常式 Reachability 中介紹了取得/檢測網路狀態的方法。要在應用程式程式中使用Reachability,首先要完成如下兩部: 1.1. 添加源檔案: 在你的程式中使用 Reachability 只須將該常式中的 Reachability.h 和
Time of Update: 2018-12-05
我的UIViewController的Xib裡面的View是 3.5寸的即(320*480)的。在設定自適應自動伸長以後,經常會在ViewDidLoad方法裡面初始化一些介面,這時候使用主self.view.frame時,發現frame和xib裡面的尺寸是一樣的,並沒有自適應伸長,結果很多subview錯位了,上網查了下,在stackoverflow上發現一段說明: The frame is not guaranteed to be the same in viewDidLoad as it
Time of Update: 2018-12-05
看起來蠻簡單的功能,給UITableView增加一個tap的手勢,響應一個方法來退出鍵盤就行了,於是很有了下面代碼: //增加tap手勢,點擊使退出鍵盤 UITapGestureRecognizer * tapGesture = [[UITapGestureRecognizeralloc]initWithTarget:selfaction:@selector(dismissKeyBoard)];
Time of Update: 2018-12-05
這個問題其實,遇到幾次了,事情比較多,就沒去仔細研究,解決方案也是很暴力的直接加上8小時。這次遇到了,調試了下,發現其實不是那麼回事。NSDate * nowDate = [NSDate