android调用摄像头拍照,并且用imageView显示出来
16lz
2021-01-26
这是我学习android以来的第一篇博客 本人菜鸟,请各位程序员多多关照
android调用摄像头,并且把拍下来的照片用imageView显示出来
打开应用调用摄像头,拍照后点击确定 你拍下的照片就会在你的应用里显示出来
如图:
在捕获一张图片时,如果Camera 应用程序没有将图片返回给调用活动,那么简单地使用内置的Camera 应用程序捕获图像将不具有真正的作用。而为了使得它真正有用,可以将活动中的startActivity 方法替换为startActivityForResult 方法。使用该方法将允许我们访问从Camera 应用程序中返回的数据,它恰好是用户以位图(Bitmap)形式捕获的图像。
代码如下:
package com.example.activity;
import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.view.Menu;
import android.widget.ImageView;
public class MainActivity extends Activity {
final static int CAMERA_RESULT = 0;
ImageView imv;//定义一个imageView
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Intent intent=new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);//为了通过一个意图利用Camera 应用程序,我们所要做的仅仅是必须构造过滤器捕获的意图。
startActivityForResult(intent, CAMERA_RESULT);
//onActivityResult(requestCode, resultCode, intent)
}
protected void onActivityResult(int requestCode ,int resultCode , Intent intent )
{
super.onActivityResult(requestCode, resultCode, intent);
if (resultCode == RESULT_OK)
{
Bundle extras = intent.getExtras();//从intent中获取附加值
Bitmap bmpBitmap=(Bitmap)extras.get("data");//从附加值中获取返回的图像
imv=(ImageView)findViewById(R.id.img);//得到imageView的ID
imv.setImageBitmap(bmpBitmap);//讲返回的图像用ImageView显示出来
}
}
}
需要在AndroidManifest.xml中添加
android调用摄像头,并且把拍下来的照片用imageView显示出来
打开应用调用摄像头,拍照后点击确定 你拍下的照片就会在你的应用里显示出来
如图:
在捕获一张图片时,如果Camera 应用程序没有将图片返回给调用活动,那么简单地使用内置的Camera 应用程序捕获图像将不具有真正的作用。而为了使得它真正有用,可以将活动中的startActivity 方法替换为startActivityForResult 方法。使用该方法将允许我们访问从Camera 应用程序中返回的数据,它恰好是用户以位图(Bitmap)形式捕获的图像。
代码如下:
package com.example.activity;
import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.view.Menu;
import android.widget.ImageView;
public class MainActivity extends Activity {
final static int CAMERA_RESULT = 0;
ImageView imv;//定义一个imageView
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Intent intent=new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);//为了通过一个意图利用Camera 应用程序,我们所要做的仅仅是必须构造过滤器捕获的意图。
startActivityForResult(intent, CAMERA_RESULT);
//onActivityResult(requestCode, resultCode, intent)
}
protected void onActivityResult(int requestCode ,int resultCode , Intent intent )
{
super.onActivityResult(requestCode, resultCode, intent);
if (resultCode == RESULT_OK)
{
Bundle extras = intent.getExtras();//从intent中获取附加值
Bitmap bmpBitmap=(Bitmap)extras.get("data");//从附加值中获取返回的图像
imv=(ImageView)findViewById(R.id.img);//得到imageView的ID
imv.setImageBitmap(bmpBitmap);//讲返回的图像用ImageView显示出来
}
}
}
需要在AndroidManifest.xml中添加
更多相关文章
- Android应用程序主要组件知识小结
- Android(安卓)错误信息捕获发送至服务器【原创】
- android版PDA通过USB与.net应用程序通讯,实现离线版android应用同
- Android(安卓)APK的签名与重新签名
- Android(安卓)ApiDemo分析(九)--Graphics
- Android(安卓)Design 从头开始
- Android应用程序开发以及背后的设计思想深度剖析(1)
- Android图形---Graphics(概要)
- Android(安卓)错误信息捕获发送至服务器【整理】