首页 文章

应用程序在Grid布局声明中崩溃

提问于
浏览
0

类和XML不一样

public void r(View view)
        {
            LinearLayout linearLayout=findViewById(R.id.playAgain);
            linearLayout.setVisibility(View.INVISIBLE);

            activePLayer=0 ;

            for(int i=0;i<9;i++)
            {
                gameState[i]=2;
            }

            Log.i("Success","0");
//Till this part it's working

            GridLayout gridL = findViewById(R.id.gl);
            Log.i("Success","0");
//This log don't show up

            for(int i=0;i<gridL.getChildCount();i++)
            {
                ((ImageView)gridL.getChildAt(i)).setImageResource(0);
            }

        }

我想重置我在约束布局中制作的Connect-3游戏再次播放,但我的应用程序在GridLayout声明时崩溃了 . 有什么建议 ?

我的构建错误日志: -

E / AndroidRuntime:FATAL EXCEPTION:main进程:com.vivanksharma.gameconnect,PID:32090 java.lang.IllegalStateException:无法执行android的方法:onClick at android.support.v7.app.AppCompatViewInflater $ DeclaredOnClickListener.onClick(AppCompatViewInflater .java:389)在Android.view.Handler.handleCallback的android.view.View $ PerformClick.run(View.java:22285)上的android.view.View.performClick(View.java:5612)(Handler.java: 751)在android.os.Handler.dispatchMessage(Handler.java:95)的android.app.Looper.loop(Looper.java:154)在android.app.ActivityThread.main(ActivityThread.java:6123)的java . 来自com.android.internal.os.ZygoteInit.main的com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:867)中的lang.reflect.Method.invoke(Native Method)(ZygoteInit.java:757 )由以下内容引起:java.lang.reflect.Method.invoke(本机方法)中的java.lang.reflect.InvocationTargetException位于android.support.v7.app.AppCompatViewInflater $ DeclaredOnClickListener.onClick(AppCompatViewInfl) ater.java:384)在Android.view.Handler.handleCallback(Handler.java)的android.view.View $ PerformClick.run(View.java:22285)的android.view.View.performClick(View.java:5612) :751)在Android.os.Handler.dispatchMessage(Handler.java:95)的android.app.Looper.loop(Looper.java:154)在android.app.ActivityThread.main(ActivityThread.java:6123)在java位于com.android.internal.os.ZygoteInit的com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:867)中的.lang.reflect.Method.invoke(Native Method)(ZygoteInit.java: 757)引起:java.lang.ClassCastException:android.support.v7.widget.GridLayout无法在java.lang上的com.vivanksharma.gameconnect.MainActivity.r(MainActivity.java:91)中强制转换为android.widget.GridLayout位于android.view的android.view.View.performClick(View.java:5612)的android.support.v7.app.AppCompatViewInflater $ DeclaredOnClickListener.onClick(AppCompatViewInflater.java:384).reflect.Method.invoke(Native Method) .View $ PerformClick.run(View.java:22285)在android . os.Handler.handleCallback(Handler.java:751)位于android.app.A.运行时的android.O.上运行android.O.Roper.loop(Looper.java:154)的android.os.Handler.dispatchMessage(Handler.java:95) (ActivityThread.java:6123)位于com.android.internal.os的com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:867)的java.lang.reflect.Method.invoke(Native Method) .ZygoteInit.main(ZygoteInit.java:757)

1 回答

  • 1

    Edit:

    它写在你的堆栈跟踪中,

    java.lang.ClassCastException:android.support.v7.widget.GridLayout无法强制转换为android.widget.GridLayout

    你的Class和XML实际上并不相同,你需要确保导入是正确的

    解决这个问题,只需切换当前导入:

    android.support.v7.widget.GridLayout

相关问题