TBXMLSuccessBlock
和TBXMLFailureBlock
被用作實現從給定的URL成功和不成功地檢索XML數據的條件的有效方式。查看Apple的Blocks programming guide以獲取有關Objective-C塊的更多深入信息。
如果你只是想如何使用它的一些示例代碼,這(使用最新版本TBXML的):
TBXMLSuccessBlock s = ^(TBXML *tbxml) {
NSLog(@"yay");
// Do something with TBXML object "tbxml
// ...
// An example - print the name of an element
TBXMLElement *e = [TBXML childElementNamed:@"head" parentElement:tbxml.rootXMLElement];
NSString *a = [TBXML elementName:e];
NSLog(@"%@",a);
};
TBXMLFailureBlock f = ^(TBXML *tbxml, NSError *error) {
// Do something to recover from the failure here
// ....
NSLog(@"nay");
};
[TBXML newTBXMLWithURL:[NSURL URLWithString:@"http://www.google.co.nz"]
success: s
failure: f];
當你執行這個代碼,TBXMLSuccessBlock應該如果你有機會執行以下URL。如果您無法訪問該網站,則會執行TBXMLFailureBlock。請注意,如果您正在使用的庫是非ARC(假設庫是源代碼而不是靜態或動態庫),並且您試圖將它集成到ARC-ified源中,則可以執行以下操作:這在Xcode下進入你的xcodeproj文件 - > Build Phases - >編譯源文件,並且對於不使用ARC的每個.m文件,輸入編譯器標誌-fno-objc-arc
,這將告訴編譯器不要使用ARC進行編譯。
謝謝:)它幫助了我。 – 2012-06-26 13:30:24
由於某些原因在SDK 5下使用ARC,initwithurl記錄到處都不適合我。拋出方法未知或不執行塊。你的代碼使它對我有用。 – Yahel 2012-07-25 08:10:10