2016~4.12Android 之图片处理
2016-04-12 17:36
519 查看
努力从今天开始
转发地址 http://blog.csdn.net/heng615975867/article/details/50618377
今天研究一下Android的图片的使用问题
做项目中遇到头像问题,在分辨率不同的设备上需要显示相同的大小,我的处理方式:
//获取网络图片
ImageHttpUtile.setVolleyImageview(bean.stuIcon, holder.stuIcon);
LayoutParams para;
para = holder.stuIcon.getLayoutParams();
para.height = context.getResources().getDimensionPixelSize(R.dimen.student_icon_height);
para.width = context.getResources().getDimensionPixelSize(R.dimen.student_icon_wide);
holder.stuIcon.setLayoutParams(para);
以上是获取网络图片,根据不同的设备,设置不同的大小。
突然想总结一下图片处理的知识
//读取
public static Bitmap ReadBitmapById(Context context, int resId) {
BitmapFactory.Options opt = new BitmapFactory.Options();
opt.inPreferredConfig = Bitmap.Config.ARGB_8888;
opt.inPurgeable = true;
opt.inInputShareable = true;
// 获取资源图片
InputStream is = context.getResources().openRawResource(resId);
return BitmapFactory.decodeStream(is, null, opt);
}
//获得圆角bitmap
public static Bitmap getRoundedCornerBitmap(Bitmap bitmap) {
int w = bitmap.getWidth();
int h = bitmap.getHeight();
Bitmap output = Bitmap.createBitmap(w, h, Config.ARGB_8888);
Canvas canvas = new Canvas(output);
final int color = 0xff424242;
final Paint paint = new Paint();
final Rect rect = new Rect(0, 0, w, h);
final RectF rectF = new RectF(rect);
paint.setAntiAlias(true);
canvas.drawARGB(0, 0, 0, 0);
paint.setColor(color);
canvas.drawRoundRect(rectF, 10, 10, paint);// 圆角平滑度为10
paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));
canvas.drawBitmap(bitmap, rect, rect, paint);
return output;
}
转发地址 http://blog.csdn.net/heng615975867/article/details/50618377
今天研究一下Android的图片的使用问题
做项目中遇到头像问题,在分辨率不同的设备上需要显示相同的大小,我的处理方式:
//获取网络图片
ImageHttpUtile.setVolleyImageview(bean.stuIcon, holder.stuIcon);
LayoutParams para;
para = holder.stuIcon.getLayoutParams();
para.height = context.getResources().getDimensionPixelSize(R.dimen.student_icon_height);
para.width = context.getResources().getDimensionPixelSize(R.dimen.student_icon_wide);
holder.stuIcon.setLayoutParams(para);
以上是获取网络图片,根据不同的设备,设置不同的大小。
突然想总结一下图片处理的知识
//读取
public static Bitmap ReadBitmapById(Context context, int resId) {
BitmapFactory.Options opt = new BitmapFactory.Options();
opt.inPreferredConfig = Bitmap.Config.ARGB_8888;
opt.inPurgeable = true;
opt.inInputShareable = true;
// 获取资源图片
InputStream is = context.getResources().openRawResource(resId);
return BitmapFactory.decodeStream(is, null, opt);
}
//获得圆角bitmap
public static Bitmap getRoundedCornerBitmap(Bitmap bitmap) {
int w = bitmap.getWidth();
int h = bitmap.getHeight();
Bitmap output = Bitmap.createBitmap(w, h, Config.ARGB_8888);
Canvas canvas = new Canvas(output);
final int color = 0xff424242;
final Paint paint = new Paint();
final Rect rect = new Rect(0, 0, w, h);
final RectF rectF = new RectF(rect);
paint.setAntiAlias(true);
canvas.drawARGB(0, 0, 0, 0);
paint.setColor(color);
canvas.drawRoundRect(rectF, 10, 10, paint);// 圆角平滑度为10
paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));
canvas.drawBitmap(bitmap, rect, rect, paint);
return output;
}
相关文章推荐
- 使用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的关闭事件
- SourceProvider.getJniDirectories