• 打开读取相册照片


    //参数声明
    private final static int PHOTO_REQUEST_GALLERY = 1;
    private final static int PHOTO_CROP = 2;
    //启动 Intent
    
    Intent intent = new Intent(Intent.ACTION_PICK, null);
    				intent.setDataAndType(
    						MediaStore.Images.Media.EXTERNAL_CONTENT_URI, "image/*");
    				startActivityForResult(intent, PHOTO_REQUEST_GALLERY);
    

      

    // ActivityForResult的处理
    @Override
    	protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    		// super.onActivityResult(requestCode, resultCode, data);
    		switch (requestCode) {
    		case PHOTO_REQUEST_GALLERY:
    			if (data != null) {
    				startPhotoZoom(data.getData());
    			}
    			break;
    		case PHOTO_CROP:
    			if (data != null) {
    				setPicToView(data);
    				mSetV.setText("保存");
    				mCancelV.setVisibility(View.VISIBLE);
    				is2Save = true;
    			}
    			break;
    
    		default:
    			break;
    		}
    	}
    

      

        /**
    	 * 调用android系统自带的图片裁剪,把用户选择的图片 裁剪成适合用户手机的大小
    	 * 
    	 * @param imagePath
    	 */
    
    public void startPhotoZoom(Uri uri){
        // 调用intent跳转的裁间页面
        Intent intent = new Intent("com.android.camera.action.CROP");
        // 传入裁剪图片的路径uri和需要裁剪的格式
        intent.setDataAndType(uri, "image/*");
        // 可裁剪状态
        intent.putExtra("crop", "true");
        // aspectX aspectY 是宽高的比例
        intent.putExtra("aspectX", 1);
        intent.putExtra("aspectY", 1);
        // outputX outputY 是裁剪图片宽高
        intent.putExtra("outputX", 72);
        intent.putExtra("outputY", 72);
        intent.putExtra("return-data", true);
        startActivityForResult(intent, PHOTO_CROP);
    
    }
    
      private void setPicToView(Intent picdata) {
    		Bundle bundle = picdata.getExtras();
    		if (bundle != null) {
    			Bitmap photo = bundle.getParcelable("data");
    			photo.setDensity(Bitmap.DENSITY_NONE);
    			mBitmap = photo;
    			int w = photo.getWidth();
    			int h = photo.getHeight();
    			float f = photo.getDensity();
    			Drawable drawable = new BitmapDrawable(photo);
    			headV.setImageDrawable(drawable);
    		}
    	}
       
    

      

  • 相关阅读:
    ZT等占空比任意整数分频器的verilog语言实现
    并行输入的CRC32校验算法
    在Quartus II_10.1上跑一个用ModelSim仿真的简单例子
    QUARTUS II_10.1安装步骤
    ZT基于FPGA的CRC校验码生成器
    2013.09.17学习计划
    外设capsense的简单调用
    OrCAD学习笔记1
    路程之相遇问题
    ZT电路板设计软件及公司知识普及
  • 原文地址:https://www.cnblogs.com/ct732003684/p/2719713.html
Copyright © 2020-2023  润新知