如果我的应用程序的最小目标SDK设置为4,则所有对Drawable.createFromStream的调用都会调整图像大小.
例如,如果源图像宽度为480px且我的应用程序运行的Android设备的密度为1.5,则以下代码返回宽度为320的BitmapDrawable
URL url = new URL("http://www.examples.com/something.png");
Drawable d = Drawable.createFromStream(url.openStream(), "something.png");
Run Code Online (Sandbox Code Playgroud)
是否有方法强制它保持不变或指定比例(ldpi/mdpi/hdpi etC)从InputStream返回图像?
编辑:从下面的解决方案.
Bitmap b = BitmapFactory.decodeStream(inputStream);
b.setDensity(Bitmap.DENSITY_NONE);
Drawable d = new BitmapDrawable(b);
Run Code Online (Sandbox Code Playgroud)
Dmi*_*nko 11
您可以将图像加载为位图.这样它的大小将保持不变.
BitmapFactory.decodeStream(...)
Run Code Online (Sandbox Code Playgroud)
或者你可以尝试BitmapDrawable(InputStream is)构造函数.它已被弃用,但我想它应该可以胜任.
| 归档时间: |
|
| 查看次数: |
14504 次 |
| 最近记录: |