在Android Studio中,我收到的错误是无法找到onClick侦听器(由Android Studio在XML页面上生成)。直到今天我还没有遇到任何问题,所以我无法弄清楚出了什么问题。我已经尝试删除android:theme标签,但这没有帮助。
以下是我收到的以下错误消息:
test=# \d test_schema.
Table "test_schema.test_table"
Column | Type | Modifiers
--------+---------+-----------
id | integer |
Table "test_schema.test_table_2"
Column | Type | Modifiers
--------+---------+-----------
id | integer |
XML:
java.lang.IllegalStateException: Could not find a method onClick(View) in the activity class android.support.v7.internal.widget.TintContextWrapper for onClick handler on view class android.support.v7.widget.AppCompatEditText with id 'subsetTextField'
at android.view.View$1.onClick(View.java:4273)
at android.view.View.performClick(View.java:5242)
at android.widget.TextView.performClick(TextView.java:10530)
at android.view.View$PerformClick.run(View.java:21185)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:145)
at android.app.ActivityThread.main(ActivityThread.java:6872)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199)
Caused by: java.lang.NoSuchMethodException: onClick [class android.view.View]
at java.lang.Class.getMethod(Class.java:671)
at android.view.View$1.onClick(View.java:4266)
at android.view.View.performClick(View.java:5242)
at android.widget.TextView.performClick(TextView.java:10530)
at android.view.View$PerformClick.run(View.java:21185)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:145)
at android.app.ActivityThread.main(ActivityThread.java:6872)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199)
主要活动中的Java(目前为空,但无法找到):
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="number"
android:ems="10"
android:id="@+id/subsetTextField"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:onClick="onClick" />
完整的主要活动:
public void onClick(View view) {
}
我刚刚添加了一个按钮并将听众绑在按钮上,现在一切似乎都运转得很好,所以我不确定导致问题的原因,但现在已经解决了。谢谢你的帮助。
答案 0 :(得分:1)
不是从XML添加onClick()而是以编程方式添加它:
EditText myEditText = (EditText) findViewById(R.id.subsetTextField);
myEditText.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// Perform action on click
}
});
答案 1 :(得分:0)