我的应用程序一直存在问题。当我启动应用程序时,它让我犯了这个错误:
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.giuse.secondly, PID: 11553
java.lang.IllegalStateException: Could not find a method saveDate(View) in the activity class com.example.giuse.secondly.NewSheet for onClick handler on view class android.widget.Button with id 'button_save'
at android.view.View$1.onClick(View.java:4008)
at android.view.View.performClick(View.java:4781)
at android.view.View$PerformClick.run(View.java:19874)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5254)
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:902)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:697)
Caused by: java.lang.NoSuchMethodException: saveDate [class android.view.View]
at java.lang.Class.getMethod(Class.java:664)
at java.lang.Class.getMethod(Class.java:643)
at android.view.View$1.onClick(View.java:4001)
at android.view.View.performClick(View.java:4781)
at android.view.View$PerformClick.run(View.java:19874)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5254)
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:902)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:697)
当我按下SAVE按钮时,在名为add_new_sheet.xml的xml文件中,它应该保存我插入的数据。
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/save_data"
android:id="@+id/button_save"
android:textAlignment="center"
android:layout_alignParentTop="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:background="#444444"
android:textColor="#FFF"
android:onClick="saveDate"
tools:text="Save"
tools:ignore="ObsoleteLayoutParam" />
IDE建议我创建onClick Listener。 IDE建议我创建一个onClick Listener。
答案 0 :(得分:1)
将XML saveDate
属性中的onClick
更改为saveData
。我认为这是一个错字。
答案 1 :(得分:0)
在xml中设置onClick侦听器的Intead,尝试在代码中查找按钮的视图并调用setOnClickListener并将其放在实现中。
答案 2 :(得分:0)
你可能做错了。首先,它可能是拼写错误,检查你在班上制作的方法名称
其次,让你的方法看起来像这样
public void saveDate(View view){
//TODO: Add method functions here
}
您必须View
作为方法的参数
答案 3 :(得分:0)
public void addNewSheet (View view) { HashMap<String, String> queryValuesMap = new HashMap<String, String>();
在“HashMap();”中单词“String”是灰色的。