Android-捕获照片
-
28-09-2019 - |
题
在我的应用程序中,我必须实施本机相机活动,必须在其中启动相机并拍照。
详细说明,我的应用程序包含一个文本视图(顶部)以显示活动名称和一个按钮(底部)以及屏幕中间区域,应查看摄像头预览。.当用户单击该按钮时,应单击快照并将其显示为另一个活动的图像视图。
我知道使用以下方法:
Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE );
intent.putExtra( MediaStore.EXTRA_OUTPUT, outputFileUri );
startActivityForResult( intent, 0 );
但是,如果我使用的话,则不会显示我的文本视图和按钮视图。
(请注意:我正在与HTC Hero一起使用Android SDK 1.5)
请通过建议任何文章,网站或PDF来帮助我。
thanx,paresh
解决方案
如果您试图使用本机摄像机,一旦将本机相机称为它,它将控制您的视图。但是,如果您想实现自己的相机,那么这样的布局将是可能的。可以在这里找到一些好的例子:
http://www.brighthub.com/mobile/google-android/articles/43414.aspx
http://labs.makemachine.net/2010/03/simpleand-android-photo-capture/
- http://www.jondev.net/articles/capturing,_saving,_and_displaying_an_image_Image_Image_Image_in_android_(1.5,1.1.6,1.6,2.2.0,2.2.1,_2.2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1
祝你好运!
其他提示
所有说明均在Android.hardware.camera的Javadoc上 http://developer.android.com/reference/android/hardware/camera.html:
- 从Open()获取相机实例。
- 使用getParameters()获得现有(默认)设置。
- 如有必要,请修改返回的摄像头。参数对象,然后调用setParameters(camera.parameters)。
- 如果需要,请调用setDisplayorientation(int)。
- 重要的是:将完全初始化的表面持有人传递到setPreviewDisplay(Surface Holder)。没有表面,相机将无法启动预览。
- 重要:调用StartPreview()开始更新预览表面。必须在拍照之前开始预览。
- 如果需要,请致电TakePicture(Camera.ShutterCallback,Camera.picturecallback,Camera.picturecallback,Camera.picturecallback)捕获照片。等待回调提供实际图像数据。
- 拍照后,预览显示将停止。要拍摄更多照片,请再次致电StartPreview()。
- 调用stoppreview()停止更新预览表面。
重要的是:Call Release()释放相机以供其他应用程序使用。应用程序应在OnPause()()中立即释放摄像头(在OnResume())中。
表面持有人使用 表面视图
不隶属于 StackOverflow