Time of Update: 2013-12-10
作者 孫東風 2011-1-12 轉載請註明出處 引言在涉及多線程並行作業時,如何管理多線程對共用資料的訪問以及防止線程間的死結問題是個很重要的話題。在Java語言中,從Java
Time of Update: 2013-12-10
block 現在已經基本上已經使用非常普遍了,在使用用中也又很多坑,下面把block開發中應該知道的那幾件事總結下. :內聯(inline)Block內聯block 說白了就是block被嵌入到一個函數中例如:typedef void (^HelloBlock)(void); - (void) BlockTest{HelloBlock myBlock= ^(void){NSLog(@"Hello
Time of Update: 2013-12-10
使用理由:存取資料單一,小;代碼簡潔。 一、NSUserDefaults資料存放區的位置 NSUserDefaults用於儲存iPhone程式的資料,使用非常方便。 那麼這些資料最終存放在什麼地方呢?存放於一個plist檔案中。 這個檔案位於<UUID for your App>LibraryPreferences<your App"s bundle ID>.plist 二、支援存取的資料類型
Time of Update: 2013-12-10
以下是開發初期收集整理的一點資料,簡單實用,希望對新人有協助,都是網路上收集的,原始出處以不明,若侵犯您的權益,請告知,本人將及時刪除相關內容。 多線程之NSInvocationOperation多線程編程是防止主線程堵塞,增加運行效率等等的最佳方法。而原始的多線程方法存在很多的毛病,包括線程鎖死等。在Cocoa中,Apple提供了NSOperation這個類,提供了一個優秀的多線程編程方法。本次介紹NSOperation的子集,簡易方法的NSInvocationOperation:@
Time of Update: 2013-12-10
本篇的目的是開發一個自訂的彈出交談視窗組件,就是上面圖6中半透明的資訊提示視窗,其實系統類別庫中已經有UIActionSheet、UIAlertView能做到這樣的功能組件,但是顯示外觀不怎麼美觀而且跟我的這個設計不怎麼配,同時這2個組件的外觀自訂性很差幾乎改變不了顯示外觀,所以決定自己開發一個組件。實現的思路是這樣的,做一個繼承自UIWindow組件的組件的對象,這樣這個組件也就是一個UIWindow瞭然後在這個UIWindow中添加相應的半透明View達到顯示效果的目的,當我們需要顯示快顯視
Time of Update: 2013-12-10
TagLib是KDE開源項目的一個很有用的C++函數庫,可以用於讀取各種格式的歌曲ID3資訊,諸如歌名、歌手、專輯等資訊。1.5版的TagLib支援MacOS,我們可以在Cocoa中直接使用TagLib來擷取MP3歌曲的ID3資訊。就是使用TagLib擷取的歌曲資訊,沒有使用iTunes。 TagLib的功能強大,用法很簡單,只需要在工程中加入TagLib.framework,同時在需要使用TagLib的.h檔案中加入如下引用: C代碼 NSString
Time of Update: 2013-12-10
第一種方法是用系統api的方式擷取,如下#include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <sys/ioctl.h> #include <sys/types.h> #include
Time of Update: 2013-12-10
在開始iPhone應用程式開發之前,必須至少對下面這些Cocoa概念有基本的理解:有關Xcode和Interface Builder的基本資料及其在應用程式開發中的作用。如何定義新的
Time of Update: 2013-12-10
-(BOOL) hasPrefix:(NSString *) astring;檢查字串是否以astring開頭;-(BOOL) hasSuffix:(NSString *) astring;檢查字串是否以astring結尾;使用方式:NSString *filename=@"hello,world";if([filename hasPrefix:@"hello"]){...}if([filename hasSuffix:@"world"
Time of Update: 2013-12-10
要支援裝置旋轉,要做如下工作: 重寫對應的View
Time of Update: 2013-12-10
作者:易飛揚第一回:http://www.bkjia.com/kf/201110/107927.html我們介紹了開發iPhone應用程式標準的環境配置是基於intel
Time of Update: 2013-12-10
iphone開發過程中,如果遇到載入大資料或者涉及到網路通訊情況時,就需要在後台線程來完成這些事情。除了NSThread之外,iphone還提供了一套GCD機制協助開發人員來實現多線程開發。同NSThread相比,GCD的運行效率更高,開發更簡單。GCD的基礎是dispatch queue和block。 1. block可以簡單理解為一個任務。block在程式中的表現形式類似: 1 NSString * URL = @"......";23
Time of Update: 2013-12-10
一、UILabel(1)初始化UILabel <span style="color:#000000;">UILabel *scoreLabel = [ [UILabel alloc ] initWithFrame:CGRectMake((self.bounds.size.width / 2), 0.0, 150.0, 43.0) ]; scoreLabel.textAlignment =
Time of Update: 2013-12-10
NSNotificationCenter是專門供程式中不同類間的訊息通訊而設定的,使用起來極為方便,長話短說。設定通知,就是說要在什麼地方(哪個類)接受通知,一般在初始化中做。[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(test:) name:@" test"
Time of Update: 2013-12-10
- (void)viewDidLoad { [super viewDidLoad]; UISwipeGestureRecognizer *recognizer = nil; // // 向右划動 //
Time of Update: 2013-12-10
+(UIImage *)getImage:(NSString *)videoURL{ NSDictionary *opts = [NSDictionary dictionaryWithObject:[NSNumber numberWithBool:NO] forKey:AVURLAssetPreferPreciseDurationAndTimingKey]; NSURL *url = [[
Time of Update: 2013-12-10
tableView的使用主要處理代碼 1.建立UIViewController頁面,雙擊xib檔案,開啟布局視圖2.將Libery視圖中的Table View拖到view視窗3.單擊view中的Tableview,control+F2,分別將dataSource和delegate和tableview fileowner關聯4.在頁面中處理table資料顯示 //測試資料 NSArray *listData;
Time of Update: 2013-12-10
關於 Connection 的理解 在 iOS SDK 中開發感覺和 Windows 中的 Dialog Based Application 開發比較像,都是把一些頁面元素拖動到視窗中,然後再寫相應的代碼。但是,為什麼 Windows 中就沒有建立 Connection 這個過程呢?是因為 Windows 中不需要建立嗎?明顯不是。頁面元素如果與應用之間沒有關聯,是無法完成任何有效操作的。答案是 Windows 中的 Connection 是 Visual Studio
Time of Update: 2013-12-10
本篇介紹的方法是通過運行javascript的方法得到網頁的html內容: 擷取所有html:NSString *lJs = @"document.documentElement.innerHTML"; 擷取網頁title:NSString *lJs2 = @"document.title"; UIWebView *lWebView = [self
Time of Update: 2013-12-10
//擷取檔案路徑 NSString *path = [[NSBundlemainBundle] pathForResource:@"user.plist"ofType:@""]; //擷取資料 NSMutableDictionary* dict = [ [ NSMutableDictionaryalloc ]