场景

点击拍照按钮调用系统摄像机进行拍照,并将拍的照片显示在ImageView中。

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

新建一个Activity,设计其布局如下

布局xml文件为

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"tools:context=".CameraActivity"><Buttonandroid:id="@+id/button"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="启动摄像头" /><ImageViewandroid:id="@+id/iv_camera"android:layout_width="350dp"android:layout_height="350dp"android:layout_gravity="center"android:layout_marginTop="20dp" /></LinearLayout>

然后在对应的Activity中,通过指定Action的Intent来调用系统摄像头,并采用带返回结果的方式启动Activity,

然后在重写的获取Activity返回结果的方法中,判断请求码与上面自定义的常量一致并且请求结果为OK

那么通过将data强转为Bitmap并给ImageView设置数据源进行显示

package com.badao.androidstudy;import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.provider.MediaStore;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;public class CameraActivity extends AppCompatActivity {private Button btnCamera;private ImageView imageView;private final int CAMERA_REQUEST = 10;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_camera);initView();}@Overrideprotected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {super.onActivityResult(requestCode, resultCode, data);switch (requestCode) {case CAMERA_REQUEST:if (resultCode == RESULT_OK) {Bitmap bitmap = (Bitmap) data.getExtras().get("data");imageView.setImageBitmap(bitmap);}break;}}public void initView(){imageView = findViewById(R.id.iv_camera);btnCamera = findViewById(R.id.button);btnCamera.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);startActivityForResult(intent,CAMERA_REQUEST);}});}
}

示例效果

Android中实现调用摄像头拍照并显示在ImageView中相关推荐

  1. Android调用系统摄像头拍照并显示在ImageView上

    简介 现在市面上的apk只要涉及用户中心都会有头像,而且这个头像也是可自定义的,有的会采取读取相册选择其中一张作为需求照片,另一种就是调用系统摄像头拍照并获取即时照片,本博文就是讲述如何调用摄像头拍照 ...

  2. h5前端调用android拍照功能,H5中,嵌入式webview中,调用摄像头拍照功能的实现

    参考资料: 1.https://github.com/robnyman/robnyman.github.com/tree/master/camera-api[老外写的demo] 2.https://w ...

  3. Android开发之调用摄像头拍照(Android 第一行代码)

    布局文件(拍照按钮+图片显示) <?xml version="1.0" encoding="utf-8"?> <LinearLayout xm ...

  4. 【Android -- 相机】调用摄像头拍照 选择照片

    效果图 现在很多应用中都会要求用户上传一张图片来作为头像,首先我在这接收使用相机拍照和在相册中选择图片.接下来先上效果图: 实现代码 1. 布局文件: <?xml version="1 ...

  5. android拍照模糊,解决Android拍照并显示在ImageView中变模糊

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 public class ImageThumbnail { public static int reckonThumbnail(int oldWidth, ...

  6. linux中cv调用摄像头,ubuntu中opencv调用摄像头

    ubuntu中opencv调用摄像头 ubuntu中opencv调用摄像头 文章目录 一.Ubuntu中安装opencv 二.关于Linux如何开启摄像头 1.安装VMvareTools,这个是真的强 ...

  7. android: 调用摄像头拍照

    很多应用程序都可能会使用到调用摄像头拍照的功能,比如说程序里需要上传一张图片 作为用户的头像,这时打开摄像头拍张照是最简单快捷的.下面就让我们通过一个例子来学 习一下,如何才能在应用程序里调用手机的摄 ...

  8. Android——调用摄像头拍照

    调用摄像头拍照 首先修改activity_main.xml 如下: <?xml version="1.0" encoding="utf-8"?> & ...

  9. android 7调用摄像头,Android调用摄像头拍照(兼容7.0)

    [实例简介] Android调用摄像头拍照(兼容7.0)Demo,原博客文章https://blog.csdn.net/u010356768/article/details/70808162 [实例截 ...

最新文章

  1. 初中计算机新课标培训心得,新课标学习心得体会
  2. Lucene-3.0.0配置
  3. oracle字段属性设置下拉列表,下拉列表 select-option ; select-optgroup-option
  4. java编写八数码_java实现八数码
  5. flash特效原理:图片滑动放大效果(3)
  6. 怎么视频抠图?一键AI智能抠图,这招你一定要学会
  7. 如何利用OriginPro8画图
  8. 【ATSC】韩国:2017年将迎来ATSC3.0广播时代
  9. Veeam 安装部署 - 部署 Veeam Backup Replication
  10. 制作u盘winpe启动盘_RUFUS.小巧的U盘启动盘制作工具
  11. JavaWeb之Servlet-注册页面
  12. 如何选择适合你的兴趣爱好(六),钢琴
  13. python名片打印程序_Python的格式化输出--制作名片
  14. HTMl--基础样式的使用
  15. FMC150-两路250Msps AD、两路500Msps DA FMC子卡模块
  16. 解析GMAT语法中主谓一致知识点
  17. switch日版有中文吗_Switch中文系统更新方法 NS怎么设置中文系统语言
  18. 实验四:py实现求导数与隐函数偏导数
  19. uniapp | 打开iOS和Android实现GPS定位权限
  20. Spark 内存管理内存空间分配_大数据培训

热门文章

  1. Java进阶:ArrayList线程安全问题和解决方案
  2. java 数组 push pop_JavaScript学习笔记:数组的push()、pop()、shift()和unshift()方法
  3. exe反编译_反编译Python生成exe软件(Py3-polySML)
  4. IO流以及他们的种类区别 序列化反序列化 如何实现
  5. 获取下月第一天_获取当前月 下月 下下月 的第一天和最一天
  6. java e7 e9格式怎么转_java�?e7?a8??e9?a8�ӿ�
  7. 图表控件 c++_用C/C++编写16位虚拟内核
  8. 继承jpanel不显示_房产继承全指南
  9. c++ 调用cmd命令行函数 可隐藏黑框 四种方法总结
  10. python 停止工作 scapy_常见问题 - Scapy 中文文档_教程_Python开发社区