【问题标题】:What is the difference between scale and zoom in webview?webview中的缩放和缩放有什么区别?
【发布时间】:2013-12-31 12:22:52
【问题描述】:

缩放和缩放有什么区别? scale的解释是什么?以及 setInitialScale 函数的作用是什么?

【问题讨论】:

    标签: android webview zooming scale


    【解决方案1】:

    缩放:内容的缩放不能超过'overview scale'(也就是说,你的内容比屏幕窄)。这是设计使然 - 使其更小只会导致两侧呈现白色。如果您想要这种行为,您需要为内容添加填充,您已将 WebView 的布局高度指定为 WRAP_CONTENT

    • 这会使WebView 忽略viewport 元标记。
    • 将其设置为MATCH_PARENT 或固定大小。

    您正在使用某些WebSettings

      setUseWideViewport (which overrides the viewport meta tag) or
      setInitialScale (which can alter the size of the viewport).
    

    setInitialScale (int scaleInPercent)

    为此WebView 设置初始比例。 0 表示默认。默认比例的行为取决于getUseWideViewPort()getLoadWithOverviewMode() 的状态。如果内容按宽度适合 WebView 控件,则缩放设置为 100%。对于广泛的内容,行为取决于getLoadWithOverviewMode() 的状态。如果其值为 true,则内容将被缩小以适应 WebView 控件的宽度,否则不会。如果初始比例大于 0,WebView 以该值作为初始比例开始。请注意,与视口元标记中的缩放属性不同,此方法不考虑屏幕密度。

    参数

    scaleInPercent - 以百分比表示的初始比例

    【讨论】:

    • 我不明白。 ZoomIn 使 webview 内容更大, ZoomOut 使 webview 内容更小。那么缩放操作是做什么的呢?
    【解决方案2】:

    SetInitialScale

    设置此 WebView 的初始比例。 0 表示默认值。行为 默认比例取决于 getUseWideViewPort() 的状态和 getLoadWithOverviewMode()。如果内容适合 WebView 按宽度控制,则缩放设置为 100%。对于广泛的内容, 行为取决于 getLoadWithOverviewMode() 的状态。如果它是 值为真,内容将被缩小以适应宽度 WebView 控件,否则不是。如果初始比例大于 0,WebView 以这个值作为初始比例开始。请注意 与视口元标记中的缩放属性不同,此方法 不考虑屏幕密度。

    所以setInitialScale是用来缩放android的native view的。当您用两根手指缩放内容时,就像在原生 Android 浏览器中一样。

    【讨论】:

    • 我不明白。 ZoomIn 使 webview 内容更大, ZoomOut 使 webview 内容更小。那么缩放操作是做什么的呢?
    • 你说在屏幕上打开2个手指它是缩放的吗?好像是变焦吧?
    • @rafraph 没有缩放是浏览器的原生缩放
    • 好的。请尝试再次解释 setInitialScale 的作用?这个函数名中的“Initial”是什么意思?为什么不叫 setScale?
    猜你喜欢
    • 2015-05-11
    • 2010-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-04
    • 1970-01-01
    • 2011-10-30
    • 1970-01-01
    相关资源
    最近更新 更多