【发布时间】:2016-05-10 10:59:51
【问题描述】:
我看到有一些类似的问题,但到目前为止,这些问题的答案对我没有帮助。完整的错误:
java.lang.IllegalStateException: 找不到方法 onClick(View) 在 android:onClick 属性的父或祖先上下文中定义 在具有 id 的视图类 android.support.v7.widget.AppCompatButton 'button_random'
类(StartActivity.java):
public class StartActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_start);
}
public void onClick(View v) {
Log.d("DEBUG", "CLICKED " + v.getId());
}
}
XML (activity_start.xml):
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Random Game"
android:id="@+id/button_random"
android:layout_gravity="center_horizontal"
android:onClick="onClick" />
</LinearLayout>
我已将活动添加到 AndroidManifest.xml。我有类似的活动以相同的方式工作,我对这些没有任何问题......
有没有人看到我遗漏了什么或犯了错误?
【问题讨论】:
-
您的错误消息是指
AppCompatButton。你没有使用AppCompatActivity。 -
我在发布之前尝试了一些东西,抱歉。我已经编辑了上面的代码以反映我当前的代码。顺便说一句,这两个选项都不起作用。
-
您的错误仍然显示 AppCompatButton,但您的问题不包括一个
-
是的 cricket_007,这是正确的,也是我感到困惑的部分原因......