Android 如何读取本地图片或者资源图片并自定义大小
2016-12-08 15:34
621 查看
摘要:将图片资源设置到控件的src属性并且要求全屏,且不丢失内容时,我们需要对原始的图片进行处理,改变大小来适应屏幕,尤其是对包含虚拟键盘的Android设备,需要手动增加图片的高度来实现虚拟键盘消失时的全屏
读取本地图片并自定义大小
Resources res = getResources(); //savedPath为图片路径 Bitmap bitmap =BitmapFactory.decodeFile(savedPath); //Bitmap bitmap = BitmapFactory.decodeResource(res,R.drawable.test); //自定义图片大小 Bitmap newBmp = Bitmap.createScaledBitmap(bitmap, width, height, true); //将bitmap转化为Drawable,这是新的方法,如果用过时的方法Drawable drawable = new BitmapDrawable(newBmp),则会造成图片大小和原来图片大小不符的情况,当然这种情况发生在没有自定义大小的情况下 Drawable drawable = new BitmapDrawable(res,newBmp);
按比例放大或者缩小图片
注:当图片的长大于屏幕高度,宽小于屏幕宽度,并且要求全屏显示时使用Resources res = getResources(); DisplayMetrics metrics = getResources().getDisplayMetrics(); width = metrics.widthPixels; //根据资源id获取图片 Bitmap bitmap = BitmapFactory.decodeResource(res,R.drawable.test); int bit_width = bitmap.getWidth(); int bit_height = bitmap.getHeight(); //计算高宽比 float p = (float) bit_height/bit_width; Bitmap newBmp = Bitmap.createScaledBitmap(bitmap, width,(int)(width*p), true); Drawable drawable = new BitmapDrawable(res,newBmp);
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件