4

复制步骤

  • 使用新的 FB 帐户登录 FB 我可以看到显示当前目标和其他内容的网络对话框,但我看不到 Authorize OK 取消按钮(可能向下移动)。我无法滚动查看这些按钮

任何人都可以建议我快速修复,而不必更新 FB SDK

4

3 回答 3

2

我可以确认这会影响 Android 中的 Facebook SDK 2 和 3。我无法与 iOS 对话。出于某种原因,滚动条在其 WebDialog.java 代码中被禁用,因此我尝试在 setUpWebView 中启用滚动条。滚动条现在出现在此提示中,但没有“确定”和“取消”按钮。因此,这不是按钮在屏幕外且无法访问的情况,而是当包含“当前目标”部分时,按钮根本不是内容的一部分。

看起来这是 Facebook 需要解决的问题。

于 2013-05-21T16:05:57.017 回答
1

我刚刚将此解决方法发布到:webDialog "CURRENT GOALS" 标头,但没有授权或取消按钮

在 FaceBookSDK 中,我修改了 com/facebook/widget/WebDialog.java,这样一旦加载了 Web 对话框,它就会查找包含“当前目标”的块并将其隐藏(如果存在)。一旦你这样做了,按钮就会再次可见(至少它们对我来说是)。

在 com/facebook/widget/WebDialog.java 中:

私有类 DialogWebViewClient 扩展 WebViewClient {

// ... other methods ...

@Override
public void onPageFinished(WebView view, String url) {
    super.onPageFinished(view, url);
    if (!isDetached) {
        spinner.dismiss();
    }
    /*
     * Once web view is fully loaded, set the contentFrameLayout background to be transparent
     * and make visible the 'x' image.
     */
    contentFrameLayout.setBackgroundColor(Color.TRANSPARENT);
    webView.setVisibility(View.VISIBLE);
    crossImageView.setVisibility(View.VISIBLE);

    // I don't know how to highlight in the code block
    // So I just add this extra long comment to make it obvious
    // Add a javascript call to hide that element, if it exists
    webView.loadUrl("javascript:try{ document.getElementById('nux-missions-bar').style.display='none'; } catch (e) {}");
    // End changes           
}

这应该会有所帮助,至少在 Facebook 修复 API 之前是这样。

于 2013-05-29T14:32:05.930 回答
0

我遇到了同样的问题,这个问题已经解决了。我刚刚更改了在沙盒模式下运行的应用程序权限> 我只是将其更改为实时模式,突然一切都开始正常工作了。我认为fb sdk有问题,现在已经解决了.....

于 2013-05-22T04:39:27.940 回答