前人未踏の領域へ アプリ開発編

Android, iOSアプリ開発に関する調査メモ置き場。ほとんどAndroid。はてなダイアリーから移行したため古い記事にはアプリ以外も含まれます。

Unable to bind views forをくらう

課題

ButterKnifeを使ってViewHolderのbindを行ったところ、RuntimeExceptionが発生した。

java.lang.RuntimeException: Unable to bind views for $パッケージ名
       at butterknife.ButterKnife.bind(ButterKnife.java:322)
       at butterknife.ButterKnife.bind(ButterKnife.java:279)

対応

以下を見直す

  • Fieldに定義した型とviewの型が一致しているか
  • @Bindで定義したリソースIDがViewに存在するか

スタックトレースを辿ると、下の方のCaused byで何が見つからないか伝えてくれている。

Caused by: java.lang.IllegalStateException: Required view 'userName' with ID 2131558846 for field 'userName' was not found. If this view is optional add '@Nullable' annotation.

眠くて集中力が切れていたりするとこれに気づかない。。