在API级别1中添加
BitmapFactory.Options
public static class BitmapFactory.Options
extends Object
↳ | android.graphics.BitmapFactory.Options |
摘要
字段 | |
public Bitmap | 如果设置,则解码带有Options对象的方法将在加载内容时尝试重用此位图。 |
public int | 用于位图的像素密度。 |
public boolean | 此字段在API级别24中已弃用。Build.VERSION_CODES.N从此,将忽略此字段。在Build.VERSION_CODES.M其中,如果抖动为真,则解码器将尝试抖动解码图像。 |
public boolean | 此字段在API级别21中已弃用。Build.VERSION_CODES.LOLLIPOP从此,将忽略此字段。在Build.VERSION_CODES.KITKAT该字段中,该字段与inPurgeable一起使用。如果inPurgeable为false,则忽略此字段。如果inPurgeable为true,则此字段确定位图是否可以共享对输入数据(输入流,数组等)的引用,或者是否必须进行深层复制。 |
public boolean | 如果设置为true,解码器将返回null(无位图),但是 out... |
public boolean | 如果设置,解码方法将始终返回可变位图而不是不可变位图。 |
public boolean | 此字段在API级别24中已弃用。Build.VERSION_CODES.N从此,将忽略此字段。输出始终是高品质的。在Build.VERSION_CODES.M其中,如果inPreferQualityOverSpeed设置为true,则解码器将尝试将重建的图像解码为更高的质量,即使以解码速度为代价。目前,该字段仅影响JPEG解码,在这种情况下,将使用更准确但稍慢的IDCT方法。 |
public ColorSpace | 如果这是非null,解码器将尝试解码到此颜色空间。 |
public Bitmap.Config | 如果这是非null,解码器将尝试解码到此内部配置。 |
public boolean | 如果为true(这是默认值),则生成的位图将使其颜色通道预先乘以Alpha通道。 |
public boolean | 此字段在API级别21中已弃用。Build.VERSION_CODES.LOLLIPOP从此,将忽略此字段。在Build.VERSION_CODES.KITKAT其中,如果将此设置为true,则生成的位图将分配其像素,以便在系统需要回收内存时可以清除它们。在那种情况下,当需要再次访问像素时(例如,绘制位图,调用getPixels()),它们将被自动重新解码。 要进行重新解码,位图必须能够访问编码数据,方法是共享对输入的引用或者复制它。这种区别由inInputShareable控制。如果这是真的,那么位图可以保持对输入的浅引用。如果这是错误的,那么位图将显式地复制输入数据,并保留它。即使允许共享,实现仍可决定对输入数据进行深度复制。 虽然inPurgeable可以帮助避免大型Dalvik堆分配(从API级别11开始),但它牺牲了性能可预测性,因为视图系统尝试绘制的任何图像都可能导致解码延迟,这可能导致丢帧。因此,大多数应用程序应避免使用inPurgeable来实现快速流畅的UI。要最小化Dalvik堆分配,请使用该inBitmap标志。 注意:与BitmapFactory.decodeResource(Resources, int, android.graphics.BitmapFactory.Options)or一起使用时,将忽略此标志BitmapFactory.decodeFile(String, android.graphics.BitmapFactory.Options)。 |
public int | 如果设置为> 1的值,请求解码器对原始图像进行二次采样,返回较小的图像以节省内存。 |
public boolean | 设置此标志时,如果inDensity且 inTargetDensity不是0,则位图将inTargetDensity在加载时进行缩放以匹配,而不是每次将其绘制到Canvas时依赖于图形系统缩放它。 |
public int | 正在使用的实际屏幕的像素密度。 |
public int | 此位图的目标像素密度将被绘制。 |
public byte[] | 临时存储用于解码。 |
public boolean | 该字段在API级别24中已弃用。截至Build.VERSION_CODES.N,请参阅评论requestCancelDecode()。用于指示已在此对象上调用cancel的标志。如果有一个中间人想先解码边界然后解码图像,这很有用。在那种情况下,中间装置可以在边界解码和图像解码之间检查操作是否被取消。 |
public ColorSpace | 如果已知,则解码的位图将具有的颜色空间。 |
public Bitmap.Config | 如果已知,则解码后的位图将具有配置。 |
public int | 由此产生的位图高度。 |
public String | 如果已知,则将该字符串设置为解码图像的mimetype。 |
public int | 生成的位图宽度。 |
公共建设者 | |
创建一个默认的Options对象,如果保持不变,将从解码器给出相同的结果,就像传递了null一样。 |
公共方法 | |
void | 此方法在API级别24中已弃用。此时Build.VERSION_CODES.N,这不会影响解码,但仍会设置mCancel。在Build.VERSION_CODES.M和以下,如果这个选项对象在解码...调用内,可以从另一个线程调用。调用此方法将通知解码器应取消其操作。这不能保证取消解码,但如果确实如此,解码器...操作将返回null,或者如果inJustDecodeBounds为true,则将outWidth / outHeight设置为-1 |