2023年11月 Android Studio Giraffe | 2022.3.1 で動作確認済み。
ここまでの記事はこちら
今回は
START ボタン
画面の向きの固定
戻るボタンを無効化
を実装していきます。
解説 1. START ボタン START ボタンを押したらゲーム画面(MainActivity)に遷移するようにします。
StartActivity.java を開いて、9~11行目を追加します。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class StartActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_start);
}
public void startGame(View view) {
startActivity(new Intent(getApplicationContext(), MainActivity.class));
}
}
View the code on Gist .
必要なimportは2つです。
import android. content. Intent ;
import android. view. View ;
2. 画面の向きを固定 次に画面の向きを Portrait(タテ方向)に固定 します。
AndroidManifest.xml を開いて、13・15・17行目を追加します。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="jp.codeforfun.catchtheball">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.CatchTheBall">
<activity android:name=".MainActivity"
android:screenOrientation="portrait"/>
<activity android:name=".ResultActivity"
android:screenOrientation="portrait"/>
<activity android:name=".StartActivity"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
View the code on Gist .
3. 戻るボタンの無効化 戻るボタンを無効化して
にそれぞれ戻れないようにします。
MainActivity.java を開いて、一番最後に onBackPressed メソッドを追加します。(12・13行目)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
} else {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
action_flg = true;
} else if (event.getAction() == MotionEvent.ACTION_UP) {
action_flg = false;
}
}
return true;
}
@Override
public void onBackPressed() { }
}
View the code on Gist .
戻るボタンが押されても何もする必要がないので、メソッド内を空にしています。
ResultActivity.java にも同じように onBackPressed メソッドを追加してください。
onBackPressed メソッドが Deprecated(非推奨)になりました。
以下のコードに変更してください。
@Override
protected void onCreate ( Bundle savedInstanceState) {
getOnBackPressedDispatcher ( ) . addCallback ( new OnBackPressedCallback ( true ) {
@Override
public void handleOnBackPressed ( ) { }
} ) ;
}
4. アプリを実行 アプリを実行して、戻るボタンと画面の向きを確認してください。
次に行うこと 次回はゲームに欠かせない効果音を実装していきます。
ABOUT ME
書籍やオンライン講座でプログラミングを勉強してフリーランスのプログラマーになりました。
このサイトでは「わかりやすく・シンプル」をモットーに、プログラミングの基礎からアプリ開発まで紹介します。
独学でプログラミングを勉強をしている方、基礎は勉強したけれど次に何をすれば良いか分からない...という方のお役に立てるサイトを目指しています。
主な使用言語:Java / Kotlin / PHP
>> 詳しいプロフィール
>> お問い合わせ
>> 書籍を出版しました!
COMMENT
投稿いただいたコメントは管理者の承認後に表示されます。
コードやエラーに関するご質問の場合は、以下の3点
をできるだけ具体的に必ず書いてください。