うきっとラボ~中卒から始めるプログラミング~

中卒のポンコツ太郎が立派なプログラマになるまでの道のり

初心者がJavaでシューティングゲームアプリ作ってみる その1

〜Part.1:ざっくり枠組みつくるどん〜

最近、androidアプリを作ってみようと思いAndroid Studioをインストしたのでパッパラパーでワケワカランながら、ちょこっとずつ進めていこうかなっと。

こんな感じのアプリ開発は初めてなので色々間違ってることもあると思いますがご了承ください!

Android Studioのインストール方法・設定等はスキップします。あと日本語化してます!

さぁはじめよう!!わくわく!!

ざっくりとしたアクティビティ(画面)構成

  • タイトル画面
  • バトル画面
  • リザルト画面

この3画面あれば平気だろう…多分。そんな複雑なの作るつもりないし、、、

プロジェクトをつくる

ちゃちゃっと枠組みを作っていきましょうかガッハッハ
まずは「新規プロジェクトの作成」!

f:id:ukiuki0518:20191105151517j:plain
「ファイル」→「新規」→「新規プロジェクト」
レイアウトは空のヤーツでいきます
f:id:ukiuki0518:20191105151903j:plain
「空のアクティビティ」を選択
プロジェクト名は適当に「ShootStar」にします(かっこいい)
これがゲーム名になるイメージですかな!
最小APIは、GooglePlayにアップロードするなら条件があるらしいですが、今回は手持ちのオンボロAndroidで検証できればいいのでそれに合わせて設定しています
※ちなみに現在(2019/11/5時点)での条件は、新規アプリ、既存アプリのアップデートも含めて「Android9.0(APIレベル28)以上」だそうです。
developer.android.com

f:id:ukiuki0518:20191105153005j:plain
「名前」と「最小APIレベル」を設定

ディレクトリ、ファイルの意味

プロジェクトにファイルいっぱいありすぎてなんかよくわからんので調べてみました
●app/Manifests
「この画面使いますよ〜」とか「このアイコン使いますよ〜」とかを定義する大事な xmlファイル。~ のところが画面の定義っぽい
●app/java
javaファイルを格納する。アクティビティ(xml)に対応したjavaファイルで処理をつける
もちろん自作クラスとかもここに入れる
●app/res/drowable
画像リソースを保管する場所。
●app/layout
各画面表示用のxmlリソースを保管する場所。
●app/mipmap
イコン画像を保管する場所。
●app/values
文字や定数を保管する場所。(ボタンの表示文字や外語表示の文字など)

ちなみに左上のドロップダウンで表示するグループを変えられるみたい。
とりあえずドロイド君でOKだとおもいます

アクティビティ(画面)をつくる

ここでは画面の事を”アクティビティ”というらしい。なんか…オシャレじゃん
ではでは先程の3画面作っていこう!

①app/res/layoutフォルダの「activity_main.xml」を「activity_title.xml」に変える

ファイルを右クリックして「エクスプローラで表示」で名前変更したぞよ!
※ファイル名変えると他のファイルに色々影響出るっぽいから今後は最小限にしようと思いましたまる

② 同じフォルダ下に「activity_battle.xml」と「activity_result.xml」を作成したやで

layoutフォルダ右クリック→「新規」→「Layoutリソースファイル」で追加。
これでタイトル画面、バトル画面、リザルト画面はできました(完成したとは言っていない)
ファイル名に拡張子は含めなくていいみたいです。

javaファイル作成

それぞれの画面に対応したjavaファイルを作ります。例のごとく既存の「MainActivity.java」を「TitleActivity.java」に変更、クラス名も変えておきます。
あとは②と同じ要領で「BattleActivity.java」と「ResultActivity.java」を追加。

f:id:ukiuki0518:20191105165128j:plain
レイアウトとjavaファイルを作成
おお、なんかできてきたぞ(まだ始まってない)

マニフェストファイルの編集

さて、ファイル名変えたり新しくファイル作ったりしたのでAndroidManifest.xml君に教えてあげましょう。
◆app/manifests/AndroidManifest.xml(編集前)

<!-- 省略 -->
    <activity android:name=".MainActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

◆app/manifests/AndroidManifest.xml(編集後)

<!-- 省略 -->
    <activity android:name=".TitleActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name=".BattleActivity"></activity>
    <activity android:name=".ResultActivity"></activity>
</application>

ふむ。とりあえずこれで準備はできたかな!

次回はタイトル画面を作っていくぞ~!