大家好,美好的一天。
我发现使用 WebView 显示 GIF 动画很容易,因为它相当简单。
现在我显示的 GIF 大小为 800x800 像素。我想要的是这个 GIF 适合它可用的屏幕,可能会匹配父级类似的东西,这样就不必滚动或放大/缩小图片。它会自动适应任何可用的屏幕。
我用于实验的设备是:GT-I9100/Samsung Galaxy SII,屏幕尺寸为 800x480px。
这是我主要 Activity 的一段代码:
HToad view = new HToad(this, "file:///android_asset/hypnotoad.gif");
view.setInitialScale(30);
view.getSettings().setUseWideViewPort(true);
setContentView(view);
这是 HToad 类:
import android.content.Context;
import android.webkit.WebView;
public class HToad extends WebView {
public HToad(Context context, String path) {
super(context);
// TODO Auto-generated constructor stub
loadUrl(path);
}
}
我尝试使用各种设置,如 LayoutParams 和 IntialSize 等,但都没有帮助我实现我想要的。
我正在为 WebView 使用 JAVA,而不是在 XML 中定义 WebView。
提前谢谢你。
最佳答案
尝试使用 loadData 方法而不是 loadUrl 加载您的 gif 并添加这样的 css 样式:
<style type='text/css'>
img {max-width: 100%;height:initial;}
</style>
最后你必须得到这样的东西:
setBackgroundColor(Color.TRANSPARENT);
loadData("<style type='text/css'> img {max-width: 100%;height:initial;}</style>" +
"<img align='middle' src='file:///android_asset/hypnotoad.gif'/>", "text/html", "utf-8");
reload();
希望对你有所帮助。
关于android - 如何设置图像/WebView 高度/宽度以匹配父项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14695589/