是否可以为Android WebView设置最大缩放/缩放?

是否可以为Android WebView设置最大缩放/缩放?,android,webview,settings,zooming,scale,Android,Webview,Settings,Zooming,Scale,对于一个项目,我希望用户能够在网络视图上放大和缩小图像,但我不希望用户能够将图像缩小到在底部显示空白(网络视图是匹配父对象宽度和高度) 换句话说:我想在webview上设置最大缩放/比例,最大缩放与图像高度相关,而不是宽度(我现在拥有的) 如何实现这样的功能?将添加到要在webview中显示的html内容中 在这里,您可以根据自己的意愿更改最小比例=1将此添加到您将在webview中显示的html内容中 在这里,您可以根据自己的意愿更改最小刻度=1查看课程。例如: webview.getSett

对于一个项目,我希望用户能够在网络视图上放大和缩小图像,但我不希望用户能够将图像缩小到在底部显示空白(网络视图是
匹配父对象
宽度
高度

换句话说:我想在webview上设置最大缩放/比例,最大缩放与图像高度相关,而不是宽度(我现在拥有的)

如何实现这样的功能?

添加到要在webview中显示的html内容中

在这里,您可以根据自己的意愿更改最小比例=1

将此添加到您将在webview中显示的html内容中

在这里,您可以根据自己的意愿更改最小刻度=1

查看课程。例如:

webview.getSettings().setDefaultZoom(WebSettings.ZoomDensity.FAR);
看看这个班。例如:

webview.getSettings().setDefaultZoom(WebSettings.ZoomDensity.FAR);
您可以使用这个函数。 使用该选项,您可以设置setDefaultZoom。

您可以使用此函数。
使用该选项,您可以设置setDefaultZoom。

正常情况下,要使您的应用程序在所有设备上一致工作,您必须将其设置为:

this.appView.getSettings().setUseWideViewPort(true);
this.appView.getSettings().setLoadWithOverview模式(true);
this.appView.getSettings().setSupportZoom(true);
this.appView.getSettings().setDefaultZoom(ZoomDensity.FAR);
this.appView.getSettings().setBuiltinzoomControl(true);
此.appView.setInitialScale(0)

现在,您必须添加视口元标记:

您可以根据自己的喜好更改
最小比例
属性,以找到您最喜欢的匹配项

但是,有时,当您重新定向设备时,它会以纵向或横向方式重新加载,您可能会遇到问题

为此,我通常使用以下代码加载桌面版的Google主页,并将其完全缩小以适应
webview

BrowserLayout.xml:

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

     <WebView android:id="@+id/webview"
         android:layout_width="fill_parent"
         android:layout_height="fill_parent" />
</LinearLayout>
}


因此,这里
setUseWideViewPort(true)
加载您的查看端口设置并将其缩放到所需的角色,或者您可以使用
setLoadWithOverviewMode()
,但它仅适用于API 7+。

通常,要使您的应用程序在所有设备中都能一致工作,您必须将其设置为:

this.appView.getSettings().setUseWideViewPort(true);
this.appView.getSettings().setLoadWithOverview模式(true);
this.appView.getSettings().setSupportZoom(true);
this.appView.getSettings().setDefaultZoom(ZoomDensity.FAR);
this.appView.getSettings().setBuiltinzoomControl(true);
此.appView.setInitialScale(0)

现在,您必须添加视口元标记:

您可以根据自己的喜好更改
最小比例
属性,以找到您最喜欢的匹配项

但是,有时,当您重新定向设备时,它会以纵向或横向方式重新加载,您可能会遇到问题

为此,我通常使用以下代码加载桌面版的Google主页,并将其完全缩小以适应
webview

BrowserLayout.xml:

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

     <WebView android:id="@+id/webview"
         android:layout_width="fill_parent"
         android:layout_height="fill_parent" />
</LinearLayout>
}


因此这里
setUseWideViewPort(true)
加载您的视口设置并将其缩放到所需的角色,或者您可以使用
setLoadWithOverviewMode()
但它仅适用于API 7+。

据我所知,可能仅通过反射。据我所知,可能只是通过反射。我做到了这一点,但这是一个非常宽的图像(地图),它用于图像下方的空白。如果您将
最小比例=1
更改为5或6会怎么样?然后会发生什么?如果我这样做,没有任何变化。好的,让我试试。过几分钟我会回来问你,你是否在你的查看端口标签中添加了
user scalable=yes
?我已经做到了这一点,但它是一个非常宽的图像(map),并且图像下方的空白。如果你将
最小比例=1
更改为5或6会怎么样?然后会发生什么?如果我这样做,没有任何变化。好的,让我试试。过几分钟我会回来找你你是否在你的查看端口标签中添加了
user scalable=yes