小ネタです
val binding: ActivityTaskEditBinding = DataBindingUtil.setContentView(this, R.layout.activity_task_edit) val editViewModel = ViewModelProviders.of(this).get(EditViewModel::class.java) binding.editViewModel = editViewModel
上記ソースコードのbinding.editViewModel = editViewModel
で下記エラーが発生しました
Cannot access class 'ViewModel.EditViewModel'. Check your module classpath for missing or conflicting dependencies
なんだろうと思いながら、調べてみたら単純なミスでした・・
Java Naming Conventionsによるとフォルダ名はall-lowercase ASCII letters(全て小文字のASCII文字)
にしないといけないようです
今回私はViewModel
と言うフォルダ名にしていたので、エラーが発生していたようです
そこで、フォルダ名を'viewmodel
に修正するとうまく動きました
Kotlinのコーディング規約には載ってなかったみたいでしたが、載せて欲しいですね(見落としている可能性はあるので、そのときはコメントください!!)
ドキュメントは普段からチェックするべきですね