是否可以为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
?