Delphi XE7で実行時にAndroidアプリケーションの画面の向きを固定するサンプルアプリケーションを作成します。
フォームにボタンを3つ配置します。
ボタンを押すと次のような処理を行います。
- 横固定…画面の向きを横に固定する
- 縦固定…画面の向きを縦に固定する
- ユーザの現状態…画面の向きを固定しない
ソースコードは次のようになります。
uses
Androidapi.Helpers,
Androidapi.JNI.GraphicsContentViewText;
procedure TForm1.ButtonLandscapeClick(Sender: TObject);
begin
// 横固定
SharedActivity.setRequestedOrientation
(TJActivityInfo.JavaClass.SCREEN_ORIENTATION_LANDSCAPE);
end;
procedure TForm1.ButtonPortraitClick(Sender: TObject);
begin
// 縦固定
SharedActivity.setRequestedOrientation
(TJActivityInfo.JavaClass.SCREEN_ORIENTATION_PORTRAIT);
end;
procedure TForm1.ButtonUserClick(Sender: TObject);
begin
// ユーザの現状態
SharedActivity.setRequestedOrientation
(TJActivityInfo.JavaClass.SCREEN_ORIENTATION_USER);
end;
実行したところ
追記
iOSとAndroidの両方で使用できる方法を見つけました。
詳しくは「Delphi XE7で実行時にiOS・Androidアプリケーションの画面の向きを固定するには」をご覧ください。