我正在编写一个需要捕获一些图像的应用程序。我使用这样的意图启动相机应用程序:
if (v.equals(btnCap)) {
Intent cameraIntent = new Intent(
android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_NOSENSOR);
startActivityForResult(cameraIntent, CAMERA_PIC_REQUEST);
}
问题是:当我倾斜设备时,相机上的按钮仍会改变方向,而我收到的照片不是纵向的。
有人知道如何在纵向模式下拍摄图像,即使设备是倾斜的吗?
提前致谢, 阿德里安
答案 0 :(得分:1)
您最好选择创建自己的相机应用(http://developer.android.com/guide/topics/media/camera.html#custom-camera)。
然后,在AndroidManifest.xml中,在活动声明中添加android:screenOrientation="portrait"
选项。
最好建立自己的相机活动,因为根据设备型号可能会出现获取图片的问题。我曾经遇到过三星设备的问题(参见Android Samsung: Camera app won't return intent.getData())
答案 1 :(得分:1)