Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 应用程序返回错误:无法执行方法:onClick_Java_Android - Fatal编程技术网

Java 应用程序返回错误:无法执行方法:onClick

Java 应用程序返回错误:无法执行方法:onClick,java,android,Java,Android,我是Android studio的新手,正在进行我的第一个主要项目,这是一个计算分数和整数的计算器。 我现在只编写了用于添加数字的函数,以便测试它是否按预期运行,稍后我将添加其他方法。 但是,当我在(外部)平板电脑上运行应用程序时,会出现以下错误: 2020-06-08 21:45:14.250 11504-11504/com.example.fraccalcapp E/AndroidRuntime: FATAL EXCEPTION: main Process: com.example.fra

我是Android studio的新手,正在进行我的第一个主要项目,这是一个计算分数和整数的计算器。
我现在只编写了用于添加数字的函数,以便测试它是否按预期运行,稍后我将添加其他方法。
但是,当我在(外部)平板电脑上运行应用程序时,会出现以下错误:

2020-06-08 21:45:14.250 11504-11504/com.example.fraccalcapp E/AndroidRuntime: FATAL EXCEPTION: main

Process: com.example.fraccalcapp, PID: 11504
java.lang.IllegalStateException: Could not execute method for android:onClick
    at androidx.appcompat.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:402)
    at android.view.View.performClick(View.java:6294)
    at android.view.View$PerformClick.run(View.java:24774)
    at android.os.Handler.handleCallback(Handler.java:790)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:164)
    at android.app.ActivityThread.main(ActivityThread.java:6518)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
 Caused by: java.lang.reflect.InvocationTargetException
    at java.lang.reflect.Method.invoke(Native Method)
    at androidx.appcompat.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:397)
    at android.view.View.performClick(View.java:6294) 
    at android.view.View$PerformClick.run(View.java:24774) 
    at android.os.Handler.handleCallback(Handler.java:790) 
    at android.os.Handler.dispatchMessage(Handler.java:99) 
    at android.os.Looper.loop(Looper.java:164) 
    at android.app.ActivityThread.main(ActivityThread.java:6518) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807) 
 Caused by: android.content.res.Resources$NotFoundException: String resource ID #0x1
    at android.content.res.Resources.getText(Resources.java:339)
    at android.widget.TextView.setText(TextView.java:5496)
    at com.example.fraccalcapp.MainActivity.setResult(MainActivity.java:110)
    at com.example.fraccalcapp.MainActivity.addNumbers(MainActivity.java:35)
    at java.lang.reflect.Method.invoke(Native Method) 
    at androidx.appcompat.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:397) 
    at android.view.View.performClick(View.java:6294) 
    at android.view.View$PerformClick.run(View.java:24774) 
    at android.os.Handler.handleCallback(Handler.java:790) 
    at android.os.Handler.dispatchMessage(Handler.java:99) 
    at android.os.Looper.loop(Looper.java:164) 
    at android.app.ActivityThread.main(ActivityThread.java:6518) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807) 
以下是我的MainActivity.java(这是我应用程序中唯一的活动)代码:

我不能从这个错误中理解任何意义,这就是为什么我求助于你来帮助我。如果代码中有一些愚蠢的错误,请原谅我

编辑:使用Swayangjit的解决方案使应用程序停止给出此错误,但它仍然没有在textView中显示文本

Caused by: android.content.res.Resources$NotFoundException: String resource ID #0x1
at android.content.res.Resources.getText(Resources.java:339)
at android.widget.TextView.setText(TextView.java:5496)
at com.example.fraccalcapp.MainActivity.setResult(MainActivity.java:110)
at com.example.fraccalcapp.MainActivity.addNumbers(MainActivity.java:35)
at java.lang.reflect.Method.invoke(Native Method) 
at androidx.appcompat.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:397) 
at android.view.View.performClick(View.java:6294) 
at android.view.View$PerformClick.run(View.java:24774) 
at android.os.Handler.handleCallback(Handler.java:790) 
at android.os.Handler.dispatchMessage(Handler.java:99) 
at android.os.Looper.loop(Looper.java:164) 
at android.app.ActivityThread.main(ActivityThread.java:6518) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807) 
注意堆栈跟踪的这些行。它表示应用程序无法定位您试图作为一行中的参数传递的资源

com.example.fraccalcapp.MainActivity.setResult(MainActivity.java:110)

仔细检查此代码和您在此处使用的资源id

您的问题是,您在代码中的任何地方都将整数值设置为TextView,如下所示

denominator.setText(result[1]);
使用下列方法代替上述方法

denominator.setText(String.valuOf(result[1]));

仅将字符串设置为文本视图

通过检查资源我无法理解。setResult是我应用程序中的一个方法。那部分有什么问题吗?@DeathVenom你的110行有什么问题?
denominator.setText(String.valuOf(result[1]));