アンドロイド画面の回転をオフにしても、デバイスの回転を取得するにはどうすればよいですか。 私はAndroidのCamera APIを使用しています。私は風景や肖像写真を回転オフで撮る必要があります。Androidデバイスの画面回転による回転オフオフ
この事をオフにして、デバイスの向きを取得する方法はありますか?
アンドロイド画面の回転をオフにしても、デバイスの回転を取得するにはどうすればよいですか。 私はAndroidのCamera APIを使用しています。私は風景や肖像写真を回転オフで撮る必要があります。Androidデバイスの画面回転による回転オフオフ
この事をオフにして、デバイスの向きを取得する方法はありますか?
はい、あなたはいつでもあなたが使用したいプログラム的に画面の向きを設定することができます。それぞれの風景やポートレートモード用
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
。 setRequestedOrientation()メソッドはアクティビティクラスで使用できるため、アクティビティ内で使用できます。
そして、これはあなたが現在の画面の向きを取得し、その現在の状態に応じてadequatlyそれを設定することができる方法です。
Display display = ((WindowManager) getSystemService(WINDOW_SERVICE)).getDefaultDisplay();
final int orientation = display.getOrientation();
// OR: orientation = getRequestedOrientation(); // inside an Activity
// set the screen orientation on button click
Button btn = (Button) findViewById(R.id.yourbutton);
btn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
switch(orientation) {
case Configuration.ORIENTATION_PORTRAIT:
setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
break;
case Configuration.ORIENTATION_LANDSCAPE:
setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
break;
}
}
});
また、あなたは、コンフィギュレーションを使用して画面の向きを取得することができます。
Activity.getResources().getConfiguration().orientation
カメラAPIを使用している場合は、カメラパラメータを使用して回転を変更する必要があります
Camera.Parameters param = mCamera.getParameters();
param.setRotation(90);
return param;
必要なものを正確に得るために、異なる回転度を試すことができます。 90,180,270を試してください。お役に立てれば。
ありがとうございますが、これは動作しません。画面の回転はシステムが無効になっているので、表示方向は常にPortraitまたはLandscapeを返します – pedrotorres