【问题标题】:Always show zoom controls in WebView始终在 WebView 中显示缩放控件
【发布时间】:2011-10-15 13:17:09
【问题描述】:

有没有办法在 webview 中始终显示缩放控件? 我发现了这个:Always show zoom controls on a MapView 但那是地图视图。 我希望它们始终可见。

    super.onCreate(savedInstanceState);
    super.loadUrl("file:///android_asset/www/index.html");
    WebSettings ws = super.appView.getSettings();
    ws.setSupportZoom(true);
    ws.setBuiltInZoomControls(true);

【问题讨论】:

    标签: java android controls cordova zooming


    【解决方案1】:

    setDisplayZoomControls() 仅适用于 API 11 (Android 3)。因此,在绝大多数 Android 设备都是 3 或更高版本之前,您甚至都不能考虑使用它——这在几年内不会:(

    【讨论】:

      【解决方案2】:

      不确定这是否可行,因为我从未尝试过,但我检查了 developer.android.com 中的参考

      ws.setDisplayZoomControls(true);
      

      如果这有效,别忘了最好回答这个答案。

      还可以看看这个: http://www.tutorialforandroid.com/2009/02/webview-with-zoomcontrols-in-android.html

      很好的教程。 (揭穿我的理论)

      【讨论】:

      • 不工作!它说 ws 没有功能 setDisplayZoomControls。
      • .setDisplayZoomControls(Boolean enabled) 是 WebSettings 的标准方法,因此没有多大意义。尝试替换它而不是 .setBuiltInZoomControls。
      • 查看我在答案中编辑的链接。这应该让它工作
      • 我之前在那个链接上。很多错误。并且替换不起作用。
      • 试试这个:final View zoom = super.appView.getZoomControls(); zoom.setVisibility(View.VISIBLE);
      【解决方案3】:

      以上都不适合我。只有当我开始拖动 webview 内容时,控件才会第一次出现。所以我作为“快速修复”所做的是在我的 Fragment 的 onStart() 中,它包含我调用的 webview 的对话框:

      webview.invokeZoomPicker();
      

      例子:

          @Override
          public void onStart(){
              super.onStart();
              DialogFragment dialog = this;
             //...stuff
              if(dialog.getDialog()!= null && dialog.getDialog().getWindow()!=null){
                  //...more stuff
                  View v = dialog.getView();
                  if(v!=null){
                      //invoke controls on start once, they stay active a few seconds:
                      WebView webview =v.findViewById(R.id.frag_dlg_WebView);
                      webview.invokeZoomPicker();
                  }
              }
          }
      

      控件只亮几秒钟,直到它们再次消失,到那时,在我的例子中,用户应该已经拖动了 webview。

      【讨论】:

        猜你喜欢
        • 2010-10-29
        • 1970-01-01
        • 1970-01-01
        • 2011-10-30
        • 1970-01-01
        • 2012-01-19
        • 1970-01-01
        • 1970-01-01
        • 2012-08-31
        相关资源
        最近更新 更多