【Android Studio】Javaで画面移動する方法
Android StudioのJavaを使って画面移動する方法を説明していきたいと思います。どのAPIレベルにまで対応しているかわかりませんがAPIレベル28では実行することができました。
AndroidManifestの設定
今回はAndroidManifestに入力するコードはありませんので入力しないで大丈夫です。
画面の追加
次に移動先になる画面を追加していきます。左側にある「1:プロジェクト」内にある「app」内にある上の「java」内にある一番上の「com.example.myapplication」を右クリックしてください。「新規」内の「アクティビティ」から「空白のアクティビティ」を選び、「アクティビティ名」を決め、「完了」を押してください。すると新しくjavaとlayoutが追加されます。
layoutの設定
次にlayoutに入力するコードです。上から2行目にある「androidx.constraintlayout.widget.ConstraintLayout」だけ消去して代わりに「LinearLayout」を入力します。
「tools:context=".MainActivity"」と「>」の間で改行し、「android:orientation="vertical"」を入力してください。ここまでは追加したlayoutにも行ってください。
1つ目のlayoutの「TextView~/>」は使わないので消去し、代わりにこちらを入力してください。
<Button
android:id="@+id/buttonSecond"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="SecondActivity"
android:textSize="32sp" />
2つ目のlayoutにはこちらを入力してください。
<Button
android:id="@+id/buttonFinish"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Finish"
android:textSize="32sp" />
Javaの設定
最後にメインであるJavaに入力するコードです。
1つ目のjavaの「setContentView(R.layout.activity_main);」の下に書いてください。
findViewById(R.id.buttonSecond).setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this, MainActivity2.class);
startActivity(intent);
}
}
);
「Intent intent = new Intent(MainActivity.this,MainActivity2.class);」の()内は(入力している画面.this,移動したい画面.class)となっています。
2つ目のjavaの「setContentView(R.layout.activity_main2);」の下に書いてください。
findViewById(R.id.buttonFinish).setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View view) {
finish();
}
}
);
「finish();」で戻ることができます。
入力が楽なので無名リスナーでやらせていただきました。「SecondActivity」ボタンを押すと画面移動して「Finish」ボタンが表示されます。そして「Finish」ボタンを押すと元に戻るという流れです。
まとめ
今回は、画面移動する方法を説明していきました。私も作り直しながら説明していったのでエラーや、入力ミスはないようにできていると思います。この方法で取得できなかった場合はコメントください。できる限り対処していきたいと思います。
アプリ開発は調べることがほとんどです。私はこのプログラムを作るまでにたくさんのサイトを見て回ることになってしまいました。皆さんには同じ思いをしてほしくないのでこのプログラムが役に立つことを祈っています。