Search code examples
androidandroid-studioandroid-layoutandroid-cardviewgrid-layout

Grid Layout Not Showing In Real phone Android


I am making Card View Inside GridLayout. I Run My Application On My Real Device. My CardView Not Showing I also Check Like this Question In StackOverflow But That Question May Vary From My Code

This My Activity_Main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity"
    android:background="@drawable/background"
    >

   <TextView
      android:id="@+id/headText"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:text="@string/_3d_objects"
       android:textSize="30sp"
       android:layout_margin="12dp"
       android:textStyle="bold"
       android:textColor="@color/black"
      />

   <GridLayout
       android:layout_width="match_parent"
       android:layout_height="match_parent"
       android:layout_marginStart="20dp"
       android:layout_marginTop="50dp"
       android:layout_marginEnd="20dp"
       android:layout_marginBottom="20dp"
       android:columnCount="3"
       android:background="@drawable/gridback">

      <androidx.cardview.widget.CardView
          android:id="@+id/cardCube"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_gravity="fill"
          android:layout_columnWeight="1"
          android:layout_rowWeight="1"
          android:layout_row="0"
          android:layout_column="0"
          app:cardCornerRadius="8dp"
          app:cardElevation="8dp"
          app:cardUseCompatPadding="true">
         <LinearLayout
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_gravity="center_vertical|center_horizontal"
             android:gravity="center"
             android:orientation="vertical"
             tools:ignore="UseCompoundDrawables">

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@mipmap/cube_shiv"
                android:contentDescription="@string/todo"/>
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textSize="20sp"
                android:textStyle="bold"
                android:text="@string/cube"
                android:textColor="@color/black" />

         </LinearLayout>

      </androidx.cardview.widget.CardView>

      <androidx.cardview.widget.CardView
          android:id="@+id/cardBee"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_gravity="fill"
          android:layout_columnWeight="1"
          android:layout_rowWeight="1"
          android:layout_row="0"
          android:layout_column="1"
          app:cardCornerRadius="8dp"
          app:cardElevation="8dp"
          app:cardUseCompatPadding="true">
         <LinearLayout
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_gravity="center_vertical|center_horizontal"
             android:gravity="center"
             android:orientation="vertical"
             tools:ignore="UseCompoundDrawables">

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@mipmap/bee_shiv_foreground"
                android:contentDescription="@string/todo"/>
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textSize="20sp"
                android:textStyle="bold"
                android:text="@string/bee"
                android:textColor="@color/black" />

         </LinearLayout>

      </androidx.cardview.widget.CardView>

      <androidx.cardview.widget.CardView
          android:id="@+id/cardAdd"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_gravity="fill"
          android:layout_columnWeight="1"
          android:layout_rowWeight="1"
          android:layout_row="1"
          android:layout_column="0"
          app:cardCornerRadius="8dp"
          app:cardElevation="8dp"
          app:cardUseCompatPadding="true">
         <LinearLayout
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_gravity="center_vertical|center_horizontal"
             android:gravity="center"
             android:orientation="vertical"
             tools:ignore="UseCompoundDrawables">

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@drawable/ic_baseline_add_24"
                android:contentDescription="@string/todo"/>
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textSize="20sp"
                android:textStyle="bold"
                android:text="@string/add"
                android:textColor="@color/black" />

         </LinearLayout>

      </androidx.cardview.widget.CardView>



   </GridLayout>
</RelativeLayout>

I Also Add CardView , GridLayout Library In Gradle Dependancy But My Problem Not Solved. What Can I do ?

This is My Gradle File

dependencies {

    implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
    implementation 'androidx.core:core-ktx:1.3.2'
    implementation 'androidx.appcompat:appcompat:1.2.0'
    implementation 'com.google.android.material:material:1.3.0'
    implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
    implementation 'androidx.gridlayout:gridlayout:1.0.0'
    implementation 'androidx.cardview:cardview:1.0.0'
    testImplementation 'junit:junit:4.+'
    androidTestImplementation 'androidx.test.ext:junit:1.1.2'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
}

Any Alternatives For Card View ? How Can I Solve My Problem


Solution

  • I have copied your code and run it on my IDE,

    Firstly, in this line

    implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
    

    I don't know the kotlin_version that you're using, but I have deleted this line and it works for me successfully. But in your case, make sure you're using the right library or delete this line if you don't need it in anything else.

    Secondly, I've deleted all the images that you're using because I don't have them, so make sure the problem isn't related to the images.

    Thirdly, I've used local strings instead of your strings, because I don't have your strings that in strings file, so make sure the problem isn't related to the strings.

    Screenshot of the current app: enter image description here