2012-08-31 92 views
3

如您所知,您可以顯示一些Facebook視圖來進行一些操作,例如應用請求,帖子等。有一個委託來管理回調,如:dialogDidComplete:,dialogDidNotComplete:。該視圖是這樣的: enter image description here如何處理取消Facebook對話框apprequest的按鈕?

但是,取消和分享按鈕之間沒有區別。您將在dialogDidComplete:中獲得相同的回撥。管理取消的唯一方法是在角落裏的小十字。 在我的情況下,我想要做一些操作,如果用戶按下共享,而不是當他按下取消。 私人社交網絡路徑管理這種情況下,我想知道如何?

你們有什麼想法嗎?

+0

[這](http://stackoverflow.com/questions/4958912/facebook-api-how-to-cancel-graph-request)可能是一個類似的問題。見韋恩劉的回答。我希望它有幫助。 – jhoanna

回答

6

如果我沒看錯的:

  • 如果按Share你得到一個requestID早在返回的URL

  • 的一部分,如果您按返回到dialogDidCompleteCancel但它不作爲返回的URL的一部分返回requestID

代碼:

- (void)dialogCompleteWithUrl:(NSURL *)url { 
    if (![url query]) { 
     NSLog(@"User canceled dialog or there was an error"); 
     return; 
    } 
    } 
+0

可能在共享的情況下,但沒有什麼比這樣的應用程序請求.. –

+0

我還沒有嘗試過。但是,您可以使用Hackbook示例並將NSLog添加到URL並查看它。這看起來更像是一個實現問題,而不是我們方面的錯誤。謝謝! –

+0

感謝您的回答,我在您提到的hackbook示例中找到了解決方案。很奇怪取消回調不是在'dialogDidNotCompleteWithUrl:','dialogDidNotComplete:'或'dialog:(FBDialog *)對話框didFailWithError:'中進行的。 –

相關問題