Android手机摄像头编程入门1

上传人:m**** 文档编号:457977840 上传时间:2023-12-17 格式:DOCX 页数:8 大小:30.51KB
返回 下载 相关 举报
Android手机摄像头编程入门1_第1页
第1页 / 共8页
Android手机摄像头编程入门1_第2页
第2页 / 共8页
Android手机摄像头编程入门1_第3页
第3页 / 共8页
Android手机摄像头编程入门1_第4页
第4页 / 共8页
Android手机摄像头编程入门1_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《Android手机摄像头编程入门1》由会员分享,可在线阅读,更多相关《Android手机摄像头编程入门1(8页珍藏版)》请在金锄头文库上搜索。

1、Android手机摄像头编程入门实例:窈窈照相机,功能很简单,就是点击程序弹出照相预览界面,点击相机按钮完成照相功能,所照相片会存储在手机存储卡根目录。1、创建一个项目 Lesson36_Camera ,主程序文件为 MainActivity.java2、AndroidManifest.xml 中设置屏幕为横屏,并且声明摄像头和存储卡的使用权限,具体代码如下:view sourceprint?01020304050607080910111213141516173、本例中不需要布局文件main.xml,因为本例中的UI组建都是动态添加上去的。4、最后MainActivity.java的代码如下:

2、view sourceprint?001packagebasic.android.lesson36;002003importjava.io.BufferedOutputStream;004importjava.io.File;005importjava.io.FileOutputStream;006importjava.io.IOException;007importjava.util.Calendar;008importjava.util.Locale;009010importandroid.app.Activity;011importandroid.content.Context;012i

3、mportandroid.graphics.Bitmap;013importandroid.graphics.BitmapFactory;014importandroid.graphics.PixelFormat;015importandroid.hardware.Camera;016importandroid.os.Bundle;017importandroid.text.format.DateFormat;018importandroid.util.Log;019importandroid.view.KeyEvent;020importandroid.view.SurfaceHolder;

4、021importandroid.view.SurfaceView;022importandroid.view.Window;023importandroid.view.WindowManager;024importandroid.widget.FrameLayout;025importandroid.widget.TextView;026importandroid.widget.Toast;027028publicclassMainActivityextendsActivity 029030privateCameraView cv;031/准备一个相机对象032privateCamera m

5、Camera =null;033/准备一个Bitmap对象034privateBitmap mBitmap =null;035036/准备一个保存图片的PictureCallback对象037publicCamera.PictureCallback pictureCallback =newCamera.PictureCallback() 038039publicvoidonPictureTaken(byte data, Camera camera) 040Log.i(yao,onPictureTaken);041Toast.makeText(getApplicationContext(),正在

6、保存, Toast.LENGTH_LONG).show();042/用BitmapFactory.decodeByteArray()方法可以把相机传回的裸数据转换成Bitmap对象043mBitmap = BitmapFactory.decodeByteArray(data,0, data.length);044/接下来的工作就是把Bitmap保存成一个存储卡中的文件045File file =newFile(/sdcard/YY+newDateFormat().format(yyyyMMdd_hhmmss, Calendar.getInstance(Locale.CHINA) +.jpg);

7、046try047file.createNewFile();048BufferedOutputStream os =newBufferedOutputStream(newFileOutputStream(file);049mBpress(Bitmap.CompressFormat.PNG,100, os);050os.flush();051os.close();052Toast.makeText(getApplicationContext(),图片保存完毕,在存储卡的根目录, Toast.LENGTH_LONG).show();053catch(IOException e) 054e.prin

8、tStackTrace();055056057058;059060/Activity的创建方法061Override062publicvoidonCreate(Bundle savedInstanceState) 063super.onCreate(savedInstanceState);064065/窗口去掉标题066requestWindowFeature(Window.FEATURE_NO_TITLE);067/窗口设置为全屏068getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.L

9、ayoutParams.FLAG_FULLSCREEN);069/设置窗口为半透明070getWindow().setFormat(PixelFormat.TRANSLUCENT);071072/提供一个帧布局073FrameLayout fl =newFrameLayout(this);074075/创建一个照相预览用的SurfaceView子类,并放在帧布局的底层076cv =newCameraView(this);077fl.addView(cv);078079/创建一个文本框添加在帧布局中,我们可以看到,文字自动出现在了SurfaceView的前面,由此你可以在预览窗口做出各种特殊效果080TextView tv =newTextView(this);081tv.setText(请按/相机/按钮拍摄);082fl.addView(tv);083084/设置Activity的根内容视图085setContentView(fl);086087088089/

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 机械/制造/汽车 > 工业自动化

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号