DataBindingはビルド時に~Binding
という名前のクラスを生成してくれます。
こんな感じでBindingクラスを取得できますが、たまにこのクラスが生成されないことがありますので、その時に確認すべきことをまとめておきます。
FragmentMainBinding binding =
DataBindingUtil.inflate(inflater, R.layout.fragment_main, container, false);
レイアウトにタグを書いているか
レイアウトのxmlのルートに <layout>
タグを書いていないとDataBindingに対応したレイアウトだと認識してくれません。
<layout xmlns:android="http://schemas.android.com/apk/res/android">
ビルドできているか
Android Studioは猫のように気まぐれなので、たまにビルドしてくれないことがあります。
クリーンしてからビルドしなおしてみましょう。
キャッシュが悪さしていないか
何回クリーン&ビルドをしてもダメな場合、謎のキャッシュが悪さをしていることがあります。
最終手段として、キャッシュをクリアしてAndroid Studioを再起動してみましょう
File -> Invalidate Caches / Restart
これでもダメな場合は、Android Studioを入れなおすくらいしか思いつかないです。