我只在 KitKat 版本上有这个问题,其余的从 16 API 级别到 25 都可以正常工作
实例化布局的类有布局的方法,例子
<android.support.v7.widget.AppCompatButton
android:onClick="onClick"
...
public void onClick(View v) {
// do something
}
我知道我可以将其更改为监听器、数据绑定(bind)或使用 Butterknife 等库,但我想知道为什么在 4.X 版本上会崩溃?
xml布局
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical"
tools:context=".MainActivity">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button"
android:onClick="onClick" />
<android.support.v7.widget.AppCompatButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button"
android:onClick="onClick" />
</LinearLayout>
最佳答案
我已经找到了这个问题的一些解释。它被归档为一个错误。这是错误报告的链接。 https://issuetracker.google.com/issues/37108938
在要点上,他们说该问题已在 API 24 中修复,并且 onClick 与支持库不兼容。我已经在关于 kitkat 问题的线程中添加了评论。
关于android - AppCompatButton 安卓 :onClick Could not find a method exception,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44028831/