ティラノスクリプト製Androidアプリをフルスクリーンにする方法

Android


ティラノスクリプトV471
ティラノプレイヤーV112


まず、Androidの画面サイズがだいたい16:9なので、前提として、data/system/config.tjsで画面サイズを16:9にしておきます。

広げてしまうとわかりづらいので、今回の解説では高さを640→540に変更。
下をちょん切って、画面比率を16:9に。

// ◆ 画面サイズ
// scWidth に画面の幅、scHeight に画面の高さをピクセル単位で指定します。

;scWidth = 960;
;scHeight = 540;

サンプルゲームは16:9を想定して作られていないため画面下が見えなくなってしまいますが、今回の解説では気にしないでください。

スポンサーリンク

ナビゲーションバーを非表示に

※普通のエディタで編集しても問題はありませんが、この先はAndroid Studioでの編集を推奨します。

ホームボタン、戻るボタンなどが設置されているナビゲーションバーを消します。

ティラノプレイヤーを改造していきます。

src/main/java/jp/tyrano/tyranoplayerframework/MainActivity.javaの中に以下の記述をします。

/* ナビゲーションバー削除 追記*/
@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
if (hasFocus && Build.VERSION.SDK_INT >= 19) {
hideSystemUI();
}
}

private void hideSystemUI() {
View decorView = getWindow().getDecorView();
decorView.setSystemUiVisibility(
View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
);
}
/* ナビゲーションバー削除 ここまで*/
追記 少し変更を加えました。説明画像とソースコードに差異がありますが、画像ではなく上記テキストの方を参考にしてください。

この記述は「public class~」が始まって終わるまでの間かつ、別の「public void~」や「private void~」などの中に入らないように記述する必要があります。

僕はこのへんにいれています。

これを記入した際、Android StudioではBuildとViewの文字がある箇所にバッとエラーが出てくると思います。

いろいろあるのですが、Javaの知識がないと意味不明なので詳しいところは割愛します。

Android Studioで編集していればBuildの文字にカーソルを合わせると「android.os.Build? Alt+ Enter」という表示が出るので、ここでAlt+Enterを押してください。

同じようにViewの文字にカーソルを合わせると「android.view.View? Alt+ Enter」という表示が出るので、ここでAlt+Enterを押してください。

普通のテキストエディタで編集している場合は、上の方のimport●●が連なっているところに以下の二行を追記してください。

import android.os.Build;
import android.view.View;

ちなみにAndroid Studioで編集している人は、Alt+Enterを押したときに、勝手に追記されています。

これでナビゲーションバーか削除されました。
しかし、このままではナビゲーションバーがあった部分に謎の空間が残ってしまいます。

謎の空白を消す

次にsrc/main/layout/activity_main.xmlの中に記入されているandroid:fitsSystemWindowsをtrueからfalseに変更します。

android:fitsSystemWindows="false"

これで謎の空間が消えます。

アプリ画面がピッタリはまりました。

以上、ナビゲーションバーを消す方法と、ゲームウィンドウを画面にフィットさせる方法でした。

コメント