public   class   MainActivity   extends   Activity   implements   OnClickListener {
       private   Button    bt ;        private   ImageView    iv ;        private   ImageView    iv_after ;               @Override        protected   void   onCreate(Bundle savedInstanceState) {                super .onCreate(savedInstanceState);             setContentView(R.layout.   activity_main );                             iv =(ImageView) findViewById(R.id.   iv );                bt =(Button) findViewById(R.id.   bt );                iv_after =(ImageView) findViewById(R.id.   iv_after );                                          bt .setOnClickListener(   this );                    }
                     /**        * 获取图片的方法        *   @param   v        */        @Override        public   void   onClick(View v) {                             //创建隐式意图         Intent intent=   new   Intent();         intent.setAction(   "android.intent.action.PICK" );         intent.addCategory(intent.   CATEGORY_DEFAULT );         intent.setType(   "image/*" );                 startActivityForResult(intent, 0);     }                             /**      * 获取Activity返回的数据      */       @Override       protected   void   onActivityResult(   int   requestCode,   int   resultCode, Intent data) {              super .onActivityResult(requestCode, resultCode, data);                     Uri uri = data.getData();     //接收到返回照片的 uri             iv .setImageURI(uri);                         try   {                                //得到原图的bitmap   只读(要从这个bitmap读取像素点到其他的空白bitmap上)                   Bitmap  bitmap=BitmapFactory.decodeStream(getContentResolver().openInputStream(uri));                                         //创建一个空白可修改的bitmap   b1                   Bitmap  alertBitmap=Bitmap.createBitmap(bitmap.getWidth()/2, bitmap.getHeight()/2, bitmap.getConfig());                                         //将空白可修改的bitmap作为画布    b2                   Canvas  canvas=   new   Canvas(alertBitmap);                                         //创建画笔                   Paint  paint=   new   Paint();                   paint.setColor(Color.   GREEN );                                         //在画布上画原图片的像素点                 Matrix matrix =   new   Matrix();                 matrix.setScale(0.5f,0.5f);     //设置x,y方向的缩放比                    canvas.drawBitmap(bitmap, matrix, paint);     //1.原图  2.矩阵   3.画笔                                      //将画好的b2挂在iv上                   iv_after .setImageBitmap(alertBitmap);                                }   catch   (Exception e) {                                      e.printStackTrace();             }                           }
}

更多相关文章

  1. Android中Cannot draw recycled bitmaps
  2. 水波纹效果---3环波纹
  3. android学习--画圆角图
  4. Canvas基础知识
  5. 仿迅雷下载球
  6. Android字体大小设置自适应屏幕分辨率
  7. Android中View,SurfaceView和GLSurfaceView绘图的区别
  8. 【Android】View类详解 (游戏开发必备)
  9. PhoneGap是什么?

随机推荐

  1. android的Drawable
  2. android assets/raw 大文件读取
  3. Android 双击和手势的图片缩放
  4. android HttpClient 上传图片
  5. Android 权限管理框架
  6. 迁移到Androidx的常用依赖映射
  7. 关于android contentprovider 多线程读取
  8. Android WebView的加载超时处理
  9. android 多个activity 共用一套广播Broad
  10. Android(安卓)动画之帧动画