はじめに
この記事では、私が行っている新しいAndroidアプリ(プロジェクト)を作成し、基本的な設定を行う方法を紹介します。これからAndroidアプリ開発を始める方に向けた手順を説明します。
開発環境
Android Studio | Android Studio Ladybug Feature Drop | 2024.2.2 Patch 2 |
OS | Windows 11 Home |
新規プロジェクトの作成
- Android Stuidoを起動します。
- 左上のメニューから「File > New > New Project」を選択します。

3. 「Empty Views Activity」を選択して「Next」をクリックします。

4. プロジェクトの詳細を設定 を行い「Finish」
- Name: 任意のアプリ名(例: “My Application”)
- Package Name: アプリの一意の識別子(例:サイトを持っている人はドメインからとるのが一般的です。一番後ろのドットの後にアプリ名をつけます。)
- Save Location: プロジェクトの保存先
- Language: KotlinまたはJava(私はKotlinにしています。)
- Minimum SDK: 「API 23: Android 6.0 (Marshmallow)」など適切なものを選択(Help me chooseをクリックすれば、各SDKの詳細が見れます)

「Finish」クリック後、新規プロジェクトの編集画面が立ち上がります。
(立ち上がらければ、「File > Open」で作成したものを選ぶ)
Android Studioが初期設定を行っているので、右下のバーが落ち着くまで待ちます。

必要なファイルの自動インポート設定
アプリを作っている際、必要なファイルを毎回手動でインポートするのは面倒なので設定で自動でインポートされるようにしています。「File > Settings」をクリックし、「Settings」の画面が開いたら左側尾メニューから「Ediitor > General > Auto Import」を開き、次の4点にチェックを入れます。
- JavaのAdd unambiguous import on the fly
- JavaのOptimize imports on the fly
- KotlinのAdd unambiguous import on the fly
- KotlinのOptimize imports on the fly

「Apply」して「OK」で閉じます。
ViewBindingの設定
次に、ViewBindingの設定をします。これを行うことで以下のようなメリットがあるそうです。
- Null安全 –
findViewById()
を使う場合と違い、コンパイル時に型チェックが行われ、NullPointerException
のリスクが減る。 - 型安全 – キャスト不要で、Viewの型が自動的に推測される。
- パフォーマンス向上 –
findViewById()
よりも効率的にViewを参照できるため、処理が高速化される。 - コードの簡潔化 – XMLのIDをそのまま利用でき、冗長なコードが不要になる。
- FragmentやRecyclerViewで便利 –
onCreateView()
やonBindViewHolder()
で簡単にViewを扱える。
設定の実践
まず、Gradle Scriptの中にあるbuild.gradle.kts(Module :app)の中のandroid{}の内側に次のコードを追加します。
android {
//省略・・・
buildFeatures {
viewBinding = true
}
}
すると画面右上に「Sync Now」という表示がでるのでクリックしてしばらく待ちます。
続いて「app > cotlin+java」の中にあるMainActivity.ktを開いて次のように修正します。
1. MainActivityのクラスの下に ActivityMainBindingの追加
class MainActivity : AppCompatActivity() {
private lateinit var binding: ActivityMainBinding // ここを追加
// 省略・・・
}
2. OnCreateの中でbindingの設定とsetContentViewの修正をする。
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
//setContentView(R.layout.activity_main) //ここを削除
// View Bindingの設定 (ここを追加)
binding = ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.root)
// 省略・・・
}
viewBindingを使ったコード簡潔化の例
viewBindingを使った場合のコードの簡潔化の例を、ボタンを押すと TextView
のテキストが変更されるだけのシンプルなコードのビフォーアフターで紹介します。
・ビフォー↓
val button: Button = findViewById(R.id.button)
val textView: TextView = findViewById(R.id.textView)
button.setOnClickListener {
textView.text = "Hello, ViewBinding!"
}
・アフター↓
binding.button.setOnClickListener {
binding.textView.text = "Hello, ViewBinding!"
}
findViewById
を使わず、binding.button
や binding.textView
で直接アクセスできます。val button
や val textView
の宣言が不要になり、コードがスッキリします。型安全になり、間違ったビューIDを指定するミスを防げます。
おわりに
以上が私が行っているプロジェクトの作成と最初の設定です。ご参考まで。

昔はfindViewById
で迷子になっていたけど、ViewBindingのおかげで「おまえを探していたんだ…!」ってならなくなったよ。
コメント