如何在Android中的webview中显示内置的缩放控件

时间:2013-01-21 12:13:00

标签: android webview android-listview android-webview zooming

可能与此重复[始终在WebView 1中显示缩放控件但我只想显示不必要的缩放控件。

基本上我有一个列表View,我用getVIew方法中的多个webview填充它。

这是代码

    public View getView(final int position, View convertView,
            ViewGroup parent) {

        View vi = convertView;
        if (convertView == null) {
            vi = inflater.inflate(R.layout.book_reader_list_style, parent,
                    false);
            holder = new ViewHolder();

            holder.webView = (WebView) vi.findViewById(R.id.webView1);
            WebSettings webSettings = holder.webView.getSettings();
            holder.webView.setVerticalScrollBarEnabled(false);
            holder.webView.setHorizontalScrollBarEnabled(false);
            holder.webView.setVisibility(View.VISIBLE);
            webSettings.setLoadWithOverviewMode(true);
            webSettings.setUseWideViewPort(false);

            webSettings.setBuiltInZoomControls(true);
            webSettings.setSupportZoom(true);
            webSettings.setLoadWithOverviewMode(true);

            holder.webView.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View v) {
                    Log.i("Webview", "Clicked");

                }
            });

            vi.setTag(holder);
        } else {

            holder = (ViewHolder) vi.getTag();
        }

        holder.webView
                .loadDataWithBaseURL(
                        null,
                        "<!DOCTYPE html><html><body style = \"text-align:center\"><img style=\"border-style:dotted;border-width:5px;border-color:black;\" src= "
                                + URLs.get(position)
                                + " alt=\"page Not Found\"></body></html>",
                        "text/html", "UTF-8", null);

        return vi;

    }
}

class ViewHolder {
    WebView webView;

}

这是我的XML文件

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<WebView
    android:id="@+id/webView1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:clickable="false"
    android:focusable="false"
    android:focusableInTouchMode="false"
    android:scrollbars="none" />

listview很好地填充了webview,但问题是我想要缩放按钮控件。

  • 请查看我的XML和Java代码。我做错了什么?

我试过了

webSettings.setBuiltInZoomControls(true);
webSettings.setSupportZoom(true);

但仍无法正常工作

2 个答案:

答案 0 :(得分:1)

android:clickable =“false”设为 android:clickable =“true”。在您的webView XML中。你可以删除焦点或使它们成为现实

答案 1 :(得分:0)

在oncreate()方法中

webView.getSettings().setBuiltInZoomControls(true);

并且始终在询问之前进行搜索。减少冗余&amp;节省您的时间。

检查一下这个伙伴。

zoom controls for webview