一、Bitmap的加载
BitmapFactory提供了四个方法:
- docodeFiles
- decodeResource
- decodeStream
- decodeByteArray
二、Bitmap的高效加载
采用Bitmap.Options来加载所需尺寸的图片,主要使用它的inSampleSize参数,当inSampleSize大于1缩放。(inSampleSize会向下去2的指数)
高效加载图片的流程:
- 将BitmapFactory.Options的inJustDecodeBuunds设为true并加载图片
- 从Bitmap.Options中取出图片的宽高(outHeight,outWidth)
- 结合ImageView的宽高计算采样率
- 将BitmapFatory.Options中的inJustDecodeBounds设为false并加载图片
示例:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final ImageView image=findViewById(R.id.image1);
image.setImageBitmap(sampleDecodeFromResourse(getResources(),R.mipmap.dog,200,200));
}
public stati