はじめに
最近古いプロジェクトのブラッシュアップをお手伝いすることが多いのですが、その際にChipを使用していてクラッシュしてしまうことがありました。
本日はこちらに関して備忘録的にまとめておこうと思います。
クラッシュの対処法
まず、エラーのログは以下になります。
Binary XML file line #xx in xxxx/: Binary XML file line #xx in xxxx.debug:layout/view_chip: Error inflating class com.google.android.material.chip.Chip
java.lang.IllegalStateException: Fragment already added: XXXXFragment{33e975e}
エラーの詳細は以上です。
IllegalStateExceptionに目が行きがちですが、重要なのは上部のxmlに関してのエラー文になります。
こちらエラーからは原因が全くわからずですが、、、。
原因はthemeを設定していないことが原因です、以下を各種Chipに設定してあげることで、解消可能です。
android:theme="@style/Theme.MaterialComponents.Light"
以上になります。
さいごに
エラーから詳細を拾えない系の不具合は少々しんどいですよね。
ライブラリバージョンを上げたタイミング等でこういった問題が起きやすい印象ですが、また似たようなことがあればまとめておこうと思います。