首页 > 代码库 > 调用系统相机相冊
调用系统相机相冊
/** * 跳转至系统相冊 * * @param activity * 活动实例 * @param requestCode * 请求码 */ public static void startSystemAlbumForResult(Activity activity, int requestCode) { Intent intent = new Intent(Intent.ACTION_PICK, Media.EXTERNAL_CONTENT_URI); activity.startActivityForResult(intent, requestCode); }
/** * 调用系统相机 * * @param activity * 活动实例 * @param requestCode * 请求码 */ public static void startSystemCameraForResult(Activity activity, int requestCode) { Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); activity.startActivityForResult(intent, requestCode); }
/** * 启动系统截图页面 * * @param activity * 当前活动实例 * @param requestCode * 请求码 * @param data * 相片Uri地址 * @param width * 剪裁后图片的宽 * @param height * 剪裁后图片的高 */ public static void startPhotoZoomForResult(Activity activity, int requestCode, Uri data, int width, int height) { Intent intent = new Intent("com.android.camera.action.CROP"); intent.setDataAndType(data, "image/*"); // crop为true时表示显示的view能够剪裁 intent.putExtra("crop", "true"); // aspectX aspectY 是宽高的比例 intent.putExtra("aspectX", 1); intent.putExtra("aspectY", 1); // outputX,outputY 是剪裁图片的宽高 intent.putExtra("outputX", width); intent.putExtra("outputY", height); intent.putExtra("return-data", true); activity.startActivityForResult(intent, requestCode); }
/** * 获取系统相冊返回的图片路径 * * @param context * 上下文对象 * @param data * 携带数据的Intent对象 * @return 图片本地路径 */ public static String getAlbumImgPath(Context context, Intent data) { Uri selectedImage = data.getData(); if (selectedImage == null) { return null; } String[] filePathColumns = { MediaStore.Images.Media.DATA }; Cursor c = context.getContentResolver().query(selectedImage, filePathColumns, null, null, null); c.moveToFirst(); int columnIndex = c.getColumnIndex(filePathColumns[0]); String picturePath = c.getString(columnIndex); c.close(); return picturePath; }
/** * 获取系统相机返回的图片Bitmap对象 * * @param context * 上下文对象 * @param data * 携带数据的Intent对象 * @return 图片Bitmap对象 */ public static Bitmap getCameraImgBitmap(Context context, Intent data) { Bundle bundle = data.getExtras(); if (bundle != null) { return (Bitmap) bundle.get("data"); } return null; }
调用系统相机相冊
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。