Kotlinで画面遷移を実装しよう!初心者でもわかるIntentの使い方完全ガイド
生徒
「KotlinでAndroidアプリを作ってるんですが、ボタンを押したら別の画面に移動させたいんです!」
先生
「それならIntent(インテント)という仕組みを使うと、簡単に画面遷移ができますよ。」
生徒
「インテントって何ですか?あまり聞き慣れない言葉で不安です……」
先生
「心配しなくても大丈夫。インテントの使い方を初心者向けに、ゆっくり丁寧に説明していきましょう!」
1. Intentとは?
Intent(インテント)は、Androidアプリで「◯◯したい!」という意図を伝える道具のことです。
たとえば、画面を切り替えたいときや、写真を撮るアプリを呼び出したいときに使います。
今回の記事では、ボタンを押すと画面を遷移(せんい=画面を切り替えること)する方法にしぼって解説します。
2. 画面遷移の仕組みを図でイメージしよう
画面A(MainActivity)から、画面B(SecondActivity)に移動する流れは次の通りです:
- ユーザーがボタンを押す
- KotlinでIntentを使って、移動先の画面を指定する
- 画面Bが起動して、表示される
3. MainActivityのレイアウトを作ろう
まずは、最初の画面(MainActivity)のボタンをレイアウトXMLに書きます。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center"
android:padding="16dp">
<Button
android:id="@+id/buttonMove"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="次の画面へ" />
</LinearLayout>
4. KotlinでIntentを使って画面を切り替える
次に、MainActivity.ktファイルでボタンを押したときの処理を書きます。
import android.content.Intent
import android.os.Bundle
import android.widget.Button
import androidx.appcompat.app.AppCompatActivity
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val button = findViewById<Button>(R.id.buttonMove)
button.setOnClickListener {
val intent = Intent(this, SecondActivity::class.java)
startActivity(intent)
}
}
}
5. SecondActivityを作成しよう
遷移先となるSecondActivityも用意します。まずはレイアウトXMLです。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="これは2つ目の画面です"
android:textSize="20sp" />
</LinearLayout>
次に、Kotlinファイルで画面内容を定義します。
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
class SecondActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_second)
}
}
6. AndroidManifest.xmlに画面を登録する
新しく作ったSecondActivityをAndroidシステムに知らせるため、AndroidManifest.xmlに追記します。
<application
... >
<activity android:name=".SecondActivity" />
</application>
7. 実行結果を見てみよう
アプリを起動して「次の画面へ」ボタンを押すと、以下のように2つ目の画面が表示されます。
これは2つ目の画面です
8. Intentの中身をもう少し理解しよう
Intent(this, SecondActivity::class.java)という部分は、「この画面(this)から、SecondActivityに移動します」という意味です。
startActivity(intent)で、その意図(インテント)を実行します。
9. よくあるエラーと対処法
- SecondActivityをManifestに登録し忘れた:アプリが起動中にクラッシュするので注意。
- 画面ファイル(layout)の指定ミス:
R.layout.〇〇が正しく設定されているか確認しましょう。 - Activity名のスペルミス:大文字・小文字の違いにも気をつけてください。
Kotlinを基礎からしっかり学びたい人や、 Java経験を活かしてモダンな言語にステップアップしたい人には、 定番の入門書がこちらです。
基礎からわかるKotlinをAmazonで見る※ Amazon広告リンク
10. Androidアプリ開発でIntentは必須テクニック
Kotlinで画面遷移を実装するには、Intentの使い方をしっかりマスターすることが大切です。画面が1つだけのアプリは少なく、ほとんどのアプリが複数画面で構成されています。
Intentは、そんな複数画面をつなぐ“橋渡し役”です。初心者でもこの基本を押さえておけば、自信を持ってアプリ開発を進められますよ。
【未経験OK】Kotlinで始めるプログラミング入門|ゼロから「動く喜び」を体験する60分
「プログラミングを始めたい」を形にする。最新言語Kotlinで楽しむ、ものづくりの第一歩。
本講座は、プログラミング経験が全くない方のためのエントリー講座です。「コードを書くってどういうこと?」という基本から、世界中で使われている最新言語Kotlin(コトリン)を使って、実際にプログラムを動かすまでを体験します。難しい理屈よりも、まずは「自分の手で動かす楽しさ」を最短距離で実感していただきます。
具体的な体験内容と環境
【つくるもの】
簡単な言葉を入力すると自動で返答してくれる「対話型ミニプログラム」や、計算を自動化する「便利ツール」をゼロから作成します。黒い画面に自分の書いた文字が表示される瞬間は、最高の感動体験です。
【開発環境】
プロのエンジニアが実際に使っている開発ツールIntelliJ IDEA(インテリジェイ)をインストールします。ボタン一つで日本語化し、初心者でも迷わず操作できる「魔法の設定」を一緒に行います。
この60分で得られる3つの体験
プロと同じ道具を揃えることで、明日から一人でもプログラミングを続けられる環境が整います。
「変数」や「型」といった難しい言葉も、身近な例え話で解説。モヤモヤをゼロにします。
Kotlinは英語に近くて読みやすいのが特徴。自分でコードを読んで、間違いを見つけるコツも伝授します。
※本講座は、パソコン操作が不安な方でも安心して受講いただける完全マンツーマンです。あなたのペースに合わせて、一つずつ丁寧に進めていきます。
Kotlinで始めるプログラミング入門|ゼロから「動く喜び」を体験