Androidアプリ開発初心者です。
Android Studio 4 で viewBindingを使ったところ、コンパイル時にエラーが出ます。
どんなミスをしているのか、解決法をご存知の方、いらっしゃいましたら教えてください。
Android StudioのVersionは4.1.1です。
Android Studio 4.1.1 Build #AI-201.8743.12.41.6953283, built on November 5, 2020
エラー内容:
"MainActivity.kt: (6, 31): Unresolved reference: ActivityMainBinding" が発生します。
手順:
※この手順にそって実施しています。
https://developer.android.com/topic/libraries/view-binding?hl=ja
こちらも参照して、viewBinding
の箇所をbuildFeature
に変更しています
https://medium.com/androiddevelopers/use-view-binding-to-replace-findviewbyid-c83942471fc
1.新規プロジェクトを作成→EmptyActicityを選択。
Language:Kotlin
MinimumSDK :API21
2.build.gradeへ下記を追加
android { ... //追加 ここから buildFeatures { viewBinding = true } //追加 ここまで }
3.res/layout/activity_main.xml の既存のtextViewにIDを追加。
<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <TextView android:id="@+id/viewText" // ここを追加 android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hello World!" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" /> </androidx.constraintlayout.widget.ConstraintLayout>
4.MainActivity.ktに追加
package com.example.myapplication import androidx.appcompat.app.AppCompatActivity import android.os.Bundle private lateinit var binding: ActivityMainBinding //追加 <---ここ(6:31)がエラーと指摘されています。 class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) //追加 ここから binding = ActivityMainBinding.inflate(layoutInflater) val view = binding.root binding.textView.text = "Test view binding." //追加 ここまで setContentView(R.layout.activity_main) } }
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。