Butterknife引发java.lang.IllegalStateException,因为未找到视图(现在不存在)

时间:2018-10-05 12:30:17

标签: android android-studio butterknife

我正在使用Butterknife 8.8.1。不幸的是,android studio抛出IllegalStateException,因为找不到具有各自ID(我已通过重构菜单重命名)的视图!

         java.lang.RuntimeException: Unable to start activity ComponentInfo{com.aristo.nvn.aristo/com.aristo.nvn.aristo.EditorActivity}: java.lang.IllegalStateException: Required view 'add_color_rv' with ID 2131361821 for field 'mColorsRecyclerView' was not found. If this view is optional add '@Nullable' (fields) or '@Optional' (methods) annotation.

我重命名了add_color_rv id和变量mColorsRecyclerView以使用以下

@BindView(R.id.text_colors_rv) RecyclerView mTextColorsRecyclerView;

然后我绑定到onCreateView()

Butterknife.bind(this);

依赖项-

implementation 'com.jakewharton:butterknife:8.8.1'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'

开发我的第一个应用程序!救命。谢谢!

1 个答案:

答案 0 :(得分:1)

这将帮助您防止崩溃:

@Nullable // use annotation from support library.
@BindView(R.id.text_colors_rv) 
RecyclerView mTextColorsRecyclerView;
  

注意: 由于 R 文件的更改, ButterKnife 失去了对视图ID的引用,因此崩溃了。考虑重建项目,然后   部署apk。