android studio onClick找不到

时间:2015-12-04 22:29:15

标签: android android-studio

在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) {


}

我刚刚添加了一个按钮并将听众绑在按钮上,现在一切似乎都运转得很好,所以我不确定导致问题的原因,但现在已经解决了。谢谢你的帮助。

2 个答案:

答案 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)

我有同样的问题。我发现我的应用程序上下文设置为错误的活动,因为我已经复制/粘贴了活动和.xml文件。这里有个例子: enter image description here