KotlinのNavigtion Drawer Activityを使おうとしたらエラーが出たけど解決した
プロジェクトの新規作成から、Navigtion Drawer Activityのテンプレートを選択(なお、API30でやりましたけど、最低まで下げても同じでした)
こんなアラート出る
This operation requires the libraries androidx.navigation:navigation-fragment-ktx:+, androidx.navigation:navigation-ui-ktx:+.
Would you like to add these now?
OK押すと…
Failed to add navigation dependency
えー
まっか……
上部にこんなメッセージ
Some kotlin libraries attached to this project were compiled with a newer Kotlin compiler and can't read. Please update Kotlin plugin.
というてる割には、右側に
No updates found
って出てるし…
Detailsのリンクを押してみると
gradleのキャシュフォルダのうんちゃらかんちゃら/classes.jar (1.6.0) - expected: 1.4.2
というのが複数。
キャッシュフォルダ削除してみたけど変わらず。
Kotlin Pluginを新しくすればいいのかしら…
Tools > Kotlin > Configure Kotlin Plugin Updates
で確認するも
Current Kotlin plugin version: 1.4.32-release-Studio4.1-1
You have the latest version of the plugin installed.
ですって
でも1.6まで最新出てるっぽいが……それがZipでダウンロードできたので
File > Settings > Plugins
の歯車マークから「Install Plugin from Disk」を選んで突っ込んでみたけど入らず。ふむー。
gradle見る。
ext.kotlin_version = "1.4.32"
ここをごにょごにょしてみたけど、関係なかった模様。
で、これのバージョンを下げた。
implementation 'androidx.navigation:navigation-fragment-ktx:2.4.1'
implementation 'androidx.navigation:navigation-ui-ktx:2.4.1'
とりあえず2.3.5にしてSync Now。
おっ、赤減ったぞ……
波線のところ見たら
Cannot access class: 'androidx.navigation.NavController'. Check your module classpath for missing or conflicting dependencies.
とあるので、これを削除
implementation 'androidx.navigation:navigation-fragment:2.4.1'
implementation 'androidx.navigation:navigation-ui:2.4.1'
したら赤消えましたーーー
まとめ
Moduleのgradleで
//implementation 'androidx.navigation:navigation-fragment:2.4.1'
//implementation 'androidx.navigation:navigation-ui:2.4.1'
implementation 'androidx.navigation:navigation-fragment-ktx:2.3.5'
implementation 'androidx.navigation:navigation-ui-ktx:2.3.5'
でした。
はー。
Kotlinのバージョンのあれこれよ……