使用属性动画缩放 WebView
我正在开发一个 Honeycomb 平板电脑应用程序,该应用程序需要在用户与其交互时缩放一些 UI 视图。到目前为止,我一直在使用属性动画,它在 ImageView 和 TextView 中工作得很好,但在 WebView 中表现得很奇怪。
webView.animate().scaleX(2).setDuration(400);
这段代码的行为完全符合我对 ImageView 和 TextView 的期望。它将 UI 平滑地缩放至原始大小的两倍(在本例中仅在 X 方向)。
使用 WebView 时,它会将视图缩放至原始大小的两倍,但视口保持静止。如果我在那里添加一个translationX动画,它也不会影响视口的位置。如何让 WebView 的内容随视图一起缩放?
更新:事实证明,我在此处输入的代码在 Android 3.1 模拟器中完美运行。我看到的奇怪行为只发生在实际设备上。我的设备是配备 Android 3.1 的 Verizon Motorola Xoom。不幸的是,我没有任何其他设备来测试它,所以我不知道它是否是特定于模型的,或者只是代码发布版本中的一个怪癖。
I'm working on a Honeycomb tablet app that needs to scale some UI views as the user interacts with it. So far I've been using Property Animations and it's working pretty well with ImageViews and TextViews but behaves strangely with a WebView.
webView.animate().scaleX(2).setDuration(400);
This code behaves exactly as I want with ImageView and TextView. It smoothly zooms the UI up to double its original size (in this case only in the X direction).
With a WebView it will scale the view to double its original size, but the viewport remains stationary. If I throw a translationX animation in there that doesn't affect the position of the viewport either. How can I get the WebView's contents to scale along with the view?
UPDATE: It turns out that the code I entered here works perfectly in the Android 3.1 emulator. The strange behavior I'm seeing only happens on the actual device. The device I have is a Verizon Motorola Xoom with Android 3.1. I unfortunately don't have any other devices to test it on so I don't know if it's model specific or just a quirk in the release build of the code.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我开始认为这是 Android 或 Xoom 的错误。
在此 论坛主题 你可以看到整个讨论。
就我而言,我对包含 webView 的frameLayout 进行 animate().translationX(value) 动画处理,但 webView 无法在新位置绘制其内容。
我自己和论坛上的一些人在运行 VegaComb 3.2 的 Advent vega 上运行它,他们都遇到了相同的错误。另一方面,在具有不同屏幕尺寸和像素密度的多个模拟器或华硕 Transformer 上运行时,它的行为方式应如此。
I'm starting to think this is an Android or Xoom bug.
On this forum thread u can see the whole discussion.
In my case I animate().translationX(value) the frameLayout that contains the webView but the webView fails to draw it's content in the new position.
Myself and some people from the forum ran it on an advent vega running VegaComb 3.2 all of them getting the same bug. On the other hand running on several emulators with different screen sizes and pixel densities or an Asus Transformer it behaves the way it should.