我有一个相机应用程序,我希望每当打开相机时,它只在横向模式下拍摄图像?我怎样才能实现这个目标?
Intent ia = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(ia,cameraData);
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
Log.d("value of pic1", ""+pic1);
super.onActivityResult(requestCode, resultCode, data);
if(resultCode == RESULT_OK){
Bundle extras = data.getExtras();
Bitmap bmp1 = (Bitmap) extras.get("data");
}
}
答案 0 :(得分:1)
在AndroidManifest.xml文件中,您可以为应用程序指定可接受的方向。
要强制您的活动保持横向模式,只需在活动的定义标记中包含android:screenOrientation标记。
<activity android:name=".SomeActivity" android:label="@string/app_name" android:screenOrientation="landscape">
如果您要打开本机应用程序,则无法强制相机以横向模式拍摄图像。您不会在应用程序中对原生应用程序进行方向控制。
答案 1 :(得分:1)
要执行此操作,您可以使用自己的相机预览活动,而不是打开意图。您可以按照this示例轻松完成此操作。并将Actvity Orientation Mode设为Landscape。
答案 2 :(得分:1)
使用此setDisplayOrientation
你可以做到这一点
see here
答案 3 :(得分:0)
将方向指定为特定活动标记的横向,在AndroidManifest.xml文件中调用屏幕进行图像捕获。