我發送一個請求,並在收到我需要檢查條件的響應,然後導航到下一個屏幕,但是這個條件甚至在我收到響應之前檢查。我如何才能在收到回覆後才能檢查狀況。提前致謝。檢查條件後的條件
Q
檢查條件後的條件
1
A
回答
0
你使用NSURL連接還是任何組件?
嘗試使用NSURL連接委託。看看這個鏈接:
http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSURLConnection_Class/Reference/Reference.html#//apple_ref/occ/cl/NSURLConnection。
我認爲這兩種方法中的任何一種都可以。
- (無效)連接:(NSURLConnection的*)連接didReceiveData:(NSData的*)數據或
- (無效)連接:(NSURLConnection的*)連接didReceiveResponse:(NSURLResponse *)響應
0
我會考慮使用ASI庫。比NSURLConnection更好用。
無論採用哪種方式,都應該異步啓動請求並將委託設置爲self。
當您在委託回調中收到回覆時,您可以繼續進入下一個屏幕。
對於ASI你會怎麼做?
- (void)dorequest
{
NSURL *url = [NSURL URLWithString:@"http://allseeing-i.com"];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setDelegate:self];
[request startAsynchronous];
// Do no do anything else in this method.
// wait for the response to call your delegate method
}
- (void)requestFinished:(ASIHTTPRequest *)request
{
[self loadNextScreen];
}
NSURLConnection
將使用類似的代碼。只要確保你使用異步方法。
0
我覺得這個問題沒有正確解釋,因爲它被誤解了。我使用的NSURLConnection和請求是一個異步的,所以這不是問題。我需要一些代碼才能在數據下載完成後執行。
我得到了答案;通過使用NSNotifications。在我的解析器類內connectionDidFinishLoading:(NSURLConnection *)連接方法我發佈通知。在我的viewcontroller類中,我添加了一個觀察者來執行所需的代碼。
感謝
相關問題
- 1. 條件檢查
- 2. Oracle空條件來檢查條件
- 3. tal:條件不執行條件檢查
- 4. 條件檢查等待有利條件
- 5. Java條件(檢查條件內的第一個條件)
- 6. 檢查RenderPartial性能前後的條件
- 7. Concat檢查豬的條件後
- 8. 有條件檢查
- 9. MySQL條件檢查
- 10. 檢查條件xslt
- 11. 未檢查條件
- 12. JSTL條件檢查
- 13. 條件檢查NSMutableDictionary
- 14. 使用javascript鏈接檢查檢查條款和條件後進行檢查
- 15. 檢查條件後顯示對話框
- 16. 檢查條件,然後更新Magento
- 17. makefile中的條件檢查
- 18. 條件檢查的順序?
- 19. 更好的條件檢查?
- 20. Feching的條件檢查
- 21. 更快的條件檢查
- 22. 檢查約束的條件
- 23. 條件檢查與str.endswith()
- 24. VLOOKUP檢查兩個條件
- 25. 檢查var_dump條件失敗
- 26. Django模板檢查條件
- 27. jQuery文檔()條件檢查
- 28. 執行前檢查條件
- 29. 在bash在條件檢查
- 30. java條件語句檢查
我使用NSURL連接它的使用NSURL連接代表 – 2011-04-07 15:38:21
嘗試異步請求。看看這個鏈接:http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSURLConnection_Class/Reference/Reference.html%23//apple_ref/occ/cl/NSURLConnection。我認爲這兩種方法都有效。 - (void)連接:(NSURLConnection *)連接didReceiveData:(NSData *)數據或 - (void)連接:(NSURLConnection *)連接didReceiveResponse:(NSURLResponse *)響應 – insomiac 2011-04-07 15:44:15