如何检查按下按钮时检查了哪些单选按钮

当我单击执行方法的按钮时出现此错误。


Process: com.example.myapplication, PID: 7757

java.lang.IllegalStateException: Could not execute method for android:onClick

    at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:390)

    at android.view.View.performClick(View.java:6304)

    at android.view.View$PerformClick.run(View.java:24803)

    at android.os.Handler.handleCallback(Handler.java:794)

    at android.os.Handler.dispatchMessage(Handler.java:99)

    at android.os.Looper.loop(Looper.java:176)

    at android.app.ActivityThread.main(ActivityThread.java:6635)

    at java.lang.reflect.Method.invoke(Native Method)

    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)

    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:823)

 Caused by: java.lang.reflect.InvocationTargetException

    at java.lang.reflect.Method.invoke(Native Method)

    at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:385)

    at android.view.View.performClick(View.java:6304) 

    at android.view.View$PerformClick.run(View.java:24803) 

    at android.os.Handler.handleCallback(Handler.java:794) 

    at android.os.Handler.dispatchMessage(Handler.java:99) 

    at android.os.Looper.loop(Looper.java:176) 

    at android.app.ActivityThread.main(ActivityThread.java:6635) 

    at java.lang.reflect.Method.invoke(Native Method) 

android:onClick 在单击按钮时通过 xml 调用该方法。


我查看了错误并注意到它说这是因为单选按钮小部件无法转换为按钮小部件,对吗?如果是这样,我该如何实现。我要做的只是在单击按钮后检查单选按钮的当前状态(选中与否)。我以前有效的方法是这种确切的方法,但从单选按钮调用。我在单选按钮的 xml 文件上放了一个 android:onClick 。但这不知何故是行不通的。



一只斗牛犬
浏览 109回答 1
1回答

狐的传说

找到了解决方案,显然我需要使用单选组而不是直接使用单选按钮,我所做的唯一更改是在代码中,这里是,public void submitbtn(View view)    {         RadioGroup q4r = findViewById(R.id.q4r);        //Checking which radio button is checked, if any, and then executing tasks        if(q1r.getCheckedRadioButtonId() == R.id.q1r1)        {            //execute tasks        }        else if(q1r.getCheckedRadioButtonId() == -1)        {            //Nothing        }        else        {            //execute tasks        }    }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java