带有图像的WebView在缩放后不会保持在中心(双击)

时间:2014-03-24 19:15:28

标签: android webview

我一直在尝试在WebView中显示图像。图像可能很大,尺寸可能比设备大。我选择使用Webview因为它能够显示大图像。

但是,很难在布局中显示带有图像的WebView并将其保持在中心附近。使用下面的代码,图像在开始时在中心显示正常,但是一旦我开始双击,它就会放大并缩小并在整个屏幕上移动。它最终与设备碎片的顶部对齐,并且不会从那里移动。

我在这里遗漏了一些东西。是否有任何具体方法可以在WebView

中实现中心对齐的图像

我在寻找的是:

  • Webview应该展开并折叠为双击切换
  • 图像应放大和缩小,但缩放应尊重中心的图像位置。当缩小时,它应该回到原始位置。

非常感谢任何帮助

这是我的布局xml:

<FrameLayout       xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:scaleType="centerInside"
        android:background="@android:color/holo_green_dark">

    <WebView
            android:id="@+id/test"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:adjustViewBounds="true"
            android:layout_marginLeft = "10dp"
            android:layout_marginRight = "10dp"
            android:layout_gravity="center"
            android:scaleType="centerInside"

            />

</FrameLayout>

以下是活动源代码:

public class TestActivity7 extends Activity {

    String largeURL = "http://test.png";
    WebView webView;

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.test);
        webView = (WebView) findViewById(R.id.test);
        WebSettings webSettings = webView.getSettings();
        webSettings.setDisplayZoomControls(false);

        webSettings.setDisplayZoomControls(false);
        webSettings.setSupportZoom(false);
        webSettings.setJavaScriptEnabled(true);
        webSettings.setUseWideViewPort(true);
        webSettings.setLoadWithOverviewMode(true);

        webSettings.setDefaultTextEncodingName("utf-8");
        //   webSettings.setUseWideViewPort(true);
        webView.setInitialScale(25);
        webView.setBackgroundColor(Color.TRANSPARENT);
        webView.loadUrl(largeURL);



    }
}

0 个答案:

没有答案