[英]Force portrait mode in camera
我正在使用意图并单击图片来调用相机。 目前我在模拟器上,并希望强制相机以纵向模式点击图片(需要捕获应用程序工作的视频,因此方向更改看起来很糟糕)但相机屏幕显示横向和我调用的所有其他活动onActivityResult().
单击图片后,活动布局将以横向模式显示,如下所示:
而我之前的所有活动都以纵向方向正确显示。 我尝试添加
android:screenOrientation="portrait"
android:configChanges="orientation|keyboardHidden"
对于上面显示的活动,但无济于事。虽然当我回到家并在恢复时它正确显示在肖像中。
那我怎么强制肖像模式?
这些解决方案都不起作用。布局也没有任何问题。我通过运行更高版本(API10到API15)来实现它。 奇怪的!!
我认为这是一个已知问题,请参阅Camera | SetDisplayOrientation
您只需为每个视图设置Id。 您无需在相机中强制使用纵向模式。 这样做可以防止活动重新创建视图和丢失数据
在您定义此活动的manifest.xml中写入。
<activity android:name="your_activity name" android:screenOrientation="portrait" />
这应该工作。 我建议你检查一下真正的设备。
将此代码用于预览开始的图像捕获类。
这个shoudl工作:
Intent i = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
i.putExtra(MediaStore.EXTRA_SCREEN_ORIENTATION, ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
i.putExtra(MediaStore.EXTRA_OUTPUT, fileUri);
startActivityForResult(i, CAMERA_CODE);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.