使用相机实现拍照
2017-01-08 16:26
357 查看
一、方式一
添加权限
二、方式2
添加权限
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
public class MainActivity extends Activity implements OnClickListener { private Button button; private ImageView imageView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button = (Button) findViewById(R.id.button1); imageView = (ImageView) findViewById(R.id.imageView1); button.setOnClickListener(MainActivity.this); } public void onClick(View v) { switch (v.getId()) { case R.id.button1: // 根据指定的action跳转到相对应的相机activity Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); // 进行跳转并传递过去一个请求码,(在系统相机对应的activity页面同时会返回一个响应码) startActivityForResult(intent, 1000); break; } } /** * 1.跳转至系统相机app:Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); * 2.使用系统相机进行拍照 * 3.接收系统相机的返回数据:Bitmap bitmap = (Bitmap) data.getExtras().get("data"); * * * */ protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == 1000) { /* * 在相机对应的activity页面有这样的操作,所以才能拿到照片 * Intent intent = new Intent(); * intent.putExtra("data", "这里面放的是照片"); */ if (data != null) { // 获取拍摄好的照片 Bitmap bitmap = (Bitmap) data.getExtras().get("data"); imageView.setImageBitmap(bitmap); } } } }
二、方式2
public class MainActivity extends Activity implements OnClickListener { private Button button; private ImageView imageView; private File file; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button = (Button) findViewById(R.id.button1); button.setOnClickListener(MainActivity.this); imageView = (ImageView) findViewById(R.id.imageView1); } public void onClick(View v) { // 创建意图,跳转到系统相机对应的activity Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); // 创建图片的保存路径 String path = Environment.getExternalStorageDirectory() .getAbsolutePath(); file = new File(path, "guo.jpg"); // 告诉相机照片的存放位置 intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(file)); startActivityForResult(intent, 1000); } protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == 1000) { Bitmap bitmap = BitmapFactory.decodeFile(file.getAbsolutePath()); imageView.setImageBitmap(bitmap); } } }
相关文章推荐
- 使用AlertDialog弹窗实现相机拍照或者从图库选取图片显示
- Android使用系统自带的相机实现一键拍照功能
- 使用J2ME实现拍照和录音功能
- 基于OPENGL使用C++实现相机类
- 如何使用HTML5实现利用摄像头拍照上传功能
- android 实现调用相机拍照 获取照片路径并上传
- 使用android内置相机拍照
- 如何使用页面来抓取摄像头图片实现拍照
- Android Camera相机功能实现 拍照并保存图片
- 如何使用HTML5实现拍照上传应用
- 实现主流软件的调用系统相机拍照 取得照片 并进行加工
- Android调用系统相机拍照,并且模仿实现水印相机简单功能
- 使用animation实现拍照时,画面闪一下效果
- 如何使用HTML5实现拍照上传应用
- 如何使用HTML5实现拍照上传应用
- android调用系统相机实现拍照功能
- 使用FLEX实现简单WEB在线拍照功能
- 如何使用HTML5实现拍照上传应用
- 如何使用HTML5实现拍照上传应用
- 如何使用HTML5实现拍照上传应用