2 csh 34 csh_34 于 2012.11.12 11:03 提问

Android:把图像加载到WebView的中间位置

我想在web视图上把图像加载到中间,但图像显示在web视图的左上角。图像是网络的,而不是当地的。

gifView.loadUrl(mImageUrl); 
gifView.setWebViewClient(new WebViewClient() {

        @Override
        public void onPageFinished(WebView view, String url) {
            view.getSettings().setLoadsImagesAutomatically(true);
            if (mProgressBar != null) {
                mProgressBar.setVisibility(View.GONE);
            }
        }

        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
            if (mProgressBar != null) {
                mProgressBar.setVisibility(View.VISIBLE);
            }
        }

    });

    <WebView
             android:id="@+id/gif_image"
             android:background="@null"
             android:layout_gravity="center"

            android:layout_width="fill_parent"
            android:layout_height="fill_parent" />

还添加了:

String HTML_FORMAT = "<html><body style=\"text-align: center; background-color: null; vertical-align: middle;\"><img src = \"%s\" /></body></html>";

         final String html = String.format(HTML_FORMAT, mImageUrl);

         gifView.loadDataWithBaseURL("", html, "text/html", "UTF-8", "");

我使用上面的代码,怎么把图像加载到视图的中间呢?

2个回答

O_1001_O
O_1001_O   2012.11.12 16:58
已采纳

试试这行代码:

myWebView.loadData("<html><head><style type='text/css'>body{margin:auto auto;text-align:center;} img{width:100%25;} </style></head><body><img src='www.mysite.com/myimg.jpeg'/></body></html>" ,"text/html",  "UTF-8");
csh_34
csh_34 谢谢你的回答,给我启示,但是我的url是一个可变量。
5 年多之前 回复
nana4ever
nana4ever   2012.11.13 11:30

你使用线性布局了吗?你应该使用父线性布局的gravity属性。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!