调用系统相机拍照,保存照片,调用系统裁剪API对照片处理,显示裁剪之后的照片
Posted zqxLonely
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了调用系统相机拍照,保存照片,调用系统裁剪API对照片处理,显示裁剪之后的照片相关的知识,希望对你有一定的参考价值。
package com.pingyijinren.test; import android.annotation.TargetApi; import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.ContentResolver; import android.content.Intent; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.net.Uri; import android.os.Build; import android.os.Environment; import android.provider.MediaStore; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.ImageView; import java.io.File; import java.io.FileNotFoundException; public class MainActivity extends AppCompatActivity{ private Button button; private ImageView imageView; private Uri uri; private File file; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button=(Button)findViewById(R.id.button); imageView=(ImageView)findViewById(R.id.imageView); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { file=null; try{ file=new File(Environment.getExternalStorageDirectory()+"/test.jpg"); if(file.exists()){ file.delete(); } file.createNewFile(); uri= Uri.fromFile(file); Intent intent=new Intent("android.media.action.IMAGE_CAPTURE"); intent.putExtra(MediaStore.EXTRA_OUTPUT,uri); startActivityForResult(intent, 1); } catch(Exception e){} } }); } @Override protected void onActivityResult(int requestCode,int resultCode,Intent data){ if(requestCode==1){ Intent cropIntent=new Intent("com.android.camera.action.CROP"); cropIntent.setDataAndType(uri,"image/*"); cropIntent.putExtra("scale",true); cropIntent.putExtra(MediaStore.EXTRA_OUTPUT,uri); startActivityForResult(cropIntent,2); } else if(requestCode==2){ try{ Bitmap bitmap= BitmapFactory.decodeStream(getContentResolver().openInputStream(uri)); imageView.setImageBitmap(bitmap); } catch(Exception e){} } } }
以上是关于调用系统相机拍照,保存照片,调用系统裁剪API对照片处理,显示裁剪之后的照片的主要内容,如果未能解决你的问题,请参考以下文章
调用 android 系统拍照结合 android-crop 裁剪图片
Android7.0调用系统相机拍照读取系统相册照片+CropImageView剪裁照片