首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >BitmapFactory.Options是做什么的?

BitmapFactory.Options是做什么的?
EN

Stack Overflow用户
提问于 2013-09-02 20:08:57
回答 3查看 2.8K关注 0票数 1

android.graphics.BitmapFactory.Options中的BitmapFactory.Options是做什么的?

android sdk参考手册中没有关于这个类的理论解释,它只包含了关于这个类的方法的解释。

EN

回答 3

Stack Overflow用户

发布于 2013-12-30 20:05:13

Bitmapfactory主要用于缩放

代码语言:javascript
代码运行次数:0
运行
复制
Bitmap lBmp = BitmapFactory.decodeResource(getResources(), R.Drawable.ic_dolphin); 

它得到的是"dolpin“图像,它会减小图像的大小,如果我们不使用bitmapfactory,那么就会导致内存分配不足。

票数 2
EN

Stack Overflow用户

发布于 2013-09-02 20:14:08

它用于将选项传递给BitmapFactory -正如您所期望的那样:)

例如,您可以使用它从源显式缩放位图。

票数 0
EN

Stack Overflow用户

发布于 2013-09-02 20:17:30

请参阅此示例

此方法用于创建特定大小的位图,并将其存储在SD卡中。

代码语言:javascript
代码运行次数:0
运行
复制
public Bitmap decodeFile(String path,int size) {
        try {
            // Decode image size
            BitmapFactory.Options o = new BitmapFactory.Options();
            o.inJustDecodeBounds = true;
            BitmapFactory.decodeFile(path, o);
            // The new size we want to scale to
            final int REQUIRED_SIZE = size;

            // Find the correct scale value. It should be the power of 2.
            int scale = 1;
            while (o.outWidth / scale / 2 >= REQUIRED_SIZE && o.outHeight / scale / 2 >= REQUIRED_SIZE)
                scale *= 2;

            // Decode with inSampleSize
            BitmapFactory.Options o2 = new BitmapFactory.Options();
            o2.inSampleSize = scale;
            return BitmapFactory.decodeFile(path, o2);
        } catch (Throwable e) {
            e.printStackTrace();
        }
        return null;

    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18572925

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档