ButterKnife:未找到。尝试超类 android.support.v7.app.AppCompatActivity
ButterKnife: Not found. Trying superclass android.support.v7.app.AppCompatActivity
我正在尝试使用 Butterknife
绑定 TextView 我有主要 activity 和布局由 TextView 和 id tv_app_name 组成。我遵循 documentation。
public class MainActivity extends AppCompatActivity {
@BindView(R.id.tv_app_name)
TextView tvAppName;
@BindString(R.string.app_name)
String appName;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
ButterKnife.setDebug(true);
tvAppName.setText(appName);
}
}
我遇到了 tvAppName
未初始化并显示 nullPointerException
的问题。我添加了 ButterKnife.setDebug(true);
正如 Whosebug 中的一些答案所建议的 我在日志中发现显示 ButterKnife: Not found. Trying superclass android.support.v7.app.AppCompatActivity
.
当我在寻找这个问题的解决方案时。有人说添加依赖项 butterknife-compiler
,但我已经添加了:
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:24.2.1'
testCompile 'junit:junit:4.12'
//butterknife
compile 'com.jakewharton:butterknife:8.4.0'
apk 'com.jakewharton:butterknife-compiler:8.4.0'
}
bihinde 有什么问题:
ButterKnife:未找到。尝试超类 android.support.v7.app.AppCompatActivity
我该如何解决这个问题?
您的依赖项中有错字。您的 build.gradle 文件中的行
apk 'com.jakewharton:butterknife-compiler:8.4.0'
应该是
apt 'com.jakewharton:butterknife-compiler:8.4.0'
您还需要添加
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
到您的项目级别 build.gradle 文件 -- 有关详细信息,请参阅 https://github.com/JakeWharton/butterknife#download。
我正在尝试使用 Butterknife
绑定 TextView 我有主要 activity 和布局由 TextView 和 id tv_app_name 组成。我遵循 documentation。
public class MainActivity extends AppCompatActivity {
@BindView(R.id.tv_app_name)
TextView tvAppName;
@BindString(R.string.app_name)
String appName;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
ButterKnife.setDebug(true);
tvAppName.setText(appName);
}
}
我遇到了 tvAppName
未初始化并显示 nullPointerException
的问题。我添加了 ButterKnife.setDebug(true);
正如 Whosebug 中的一些答案所建议的 我在日志中发现显示 ButterKnife: Not found. Trying superclass android.support.v7.app.AppCompatActivity
.
当我在寻找这个问题的解决方案时。有人说添加依赖项 butterknife-compiler
,但我已经添加了:
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:24.2.1'
testCompile 'junit:junit:4.12'
//butterknife
compile 'com.jakewharton:butterknife:8.4.0'
apk 'com.jakewharton:butterknife-compiler:8.4.0'
}
bihinde 有什么问题:
ButterKnife:未找到。尝试超类 android.support.v7.app.AppCompatActivity 我该如何解决这个问题?
您的依赖项中有错字。您的 build.gradle 文件中的行
apk 'com.jakewharton:butterknife-compiler:8.4.0'
应该是
apt 'com.jakewharton:butterknife-compiler:8.4.0'
您还需要添加
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
到您的项目级别 build.gradle 文件 -- 有关详细信息,请参阅 https://github.com/JakeWharton/butterknife#download。