你好,我只要按照链接通过@Oh丹尼男孩 ,我发现这个解决方案
从这个线程:http://forum.developers.facebook.net/viewtopic.php?pid=303257#p303257 通过添加以下到webViewDidFinishLoad固定这样的:在FBDialog.m
[_webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByName('cancel')[0].onclick = function onclick(event) { window.location.href = 'fbconnect://cancel'; return false;}"];
这使得取消按钮正确调用“fbconnect:// cancel”而不是“fbconnect:// success”。
- (void)webViewDidFinishLoad:(UIWebView *)webView {
[_webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByName('cancel')[0].onclick = function onclick(event) { window.location.href = 'fbconnect://cancel'; return false;}"];
[_spinner stopAnimating];
_spinner.hidden = YES;
self.title = [_webView stringByEvaluatingJavaScriptFromString:@"document.title"];
[self updateWebOrientation];
}
其正常工作:
但是还有一个问题,如果Facebook更改HTML那么这段代码将不再工作。 我对这个问题的解决方案是:
而不是把JavaScript的静态刚刚从服务器得到它在规则的间隔或similer机制
[_webView stringByEvaluatingJavaScriptFromString://We need to control this javascript from server//];
所以在未来我们可以改变这个JavaScript,而不是更新整个应用程序的。
我希望将来这个bug会得到解决http://bugs.developers.facebook.net/show_bug.cgi?id=5958
作品完美,谢谢。 – Vassily 2012-02-23 16:35:09
谢谢@Pavel。它工作得很好。 – Arslan 2012-03-27 14:59:00
谢谢,我几乎认为这是不可能的! – manmal 2012-05-28 12:10:06