小编Nis*_*yed的帖子

Butterknife中的@OnClick方法使用java.lang.BootstrapMethodError使应用程序崩溃

Butterknife用来简化我的代码。我有一个TextViewactivity_main.xml file。我想通过单击此按钮来显示吐司,TextView 但是当我使用库中的@OnClick注释时,Butterknife我的应用程序崩溃了

MainActivity.java

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ButterKnife.bind(this);
    }

    @OnClick(R.id.clickme) void clicked() {
        Toast.makeText(MainActivity.this, "Clicked", Toast.LENGTH_SHORT).show();
    }
Run Code Online (Sandbox Code Playgroud)

activity_main.xml

<TextView
        android:id="@+id/clickme"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="click me"/>
Run Code Online (Sandbox Code Playgroud)

通常,它应该显示一个吐司,但是应用程序崩溃并显示以下堆栈跟踪信息。

2019-01-02 15:26:42.617 3909-3909/com.realestate.app.realestate E/AndroidRuntime: FATAL EXCEPTION: main
**Process: com.realestate.app.realestate, PID: 3909
java.lang.BootstrapMethodError: Exception from call site #1 bootstrap method
    at butterknife.internal.DebouncingOnClickListener.<clinit>(DebouncingOnClickListener.java:12)
    at com.realestate.app.realestate.realestate.MainActivity_ViewBinding.<init>(MainActivity_ViewBinding.java:34)**
    at java.lang.reflect.Constructor.newInstance0(Native Method)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:343)
    at butterknife.ButterKnife.bind(ButterKnife.java:171)
    at butterknife.ButterKnife.bind(ButterKnife.java:100)
    at com.realestate.app.realestate.realestate.MainActivity.onCreate(MainActivity.java:25)
    at android.app.Activity.performCreate(Activity.java:7136)
    at android.app.Activity.performCreate(Activity.java:7127)
    at …
Run Code Online (Sandbox Code Playgroud)

java android butterknife

6
推荐指数
2
解决办法
1998
查看次数

标签 统计

android ×1

butterknife ×1

java ×1