title: android.support.v7.widget.GridLayoutManager$LayoutParams cannot be cast to android.widget.LinearLayout$LayoutParams
body: <p>activitymain.xml</p>
  
  <pre><code>&lt;android.support.v7.widget.RecyclerView
                              android:background="@color/primary_text"
                              android:layout_marginStart="@dimen/activity_horizontal_margin"
                              android:layout_below="@+id/adherence_text"
                              android:id="@+id/action_with_adherence"
                              android:layout_width="match_parent"
                              android:layout_height="wrap_content"&gt;
  
                          &lt;/android.support.v7.widget.RecyclerView&gt;
  </code></pre>
  
  <p>MainActivity.java</p>
  
  <pre><code> actionWithAdherence=(RecyclerView) findViewById(R.id.action_with_adherence);
          //second parameter 3 represents it has 3 column
          //actionWithAdherence.setLayoutManager(new LinearLayoutManager(this));
          actionWithAdherence.setLayoutManager(new GridLayoutManager(this, 3));
  
      actionWithAdherence.setAdapter(new DashboardAdherence(this, actionListWithAdherence));
  </code></pre>
  
  <p>calling the adapter in this class.</p>
  
  <p>Adapter xml</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;LinearLayout
      android:id="@+id/adherence_section"
      xmlns:android="http://schemas.android.com/apk/res/android"
      android:orientation="vertical"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      xmlns:app="http://schemas.android.com/apk/res-auto"&gt;
  
      &lt;at.grabner.circleprogress.CircleProgressView
          android:layout_gravity="center"
          app:cpv_maxValue="100"
          app:cpv_textSize="15dp"
          app:cpv_textColor="@color/white"
          app:cpv_unit="%"
          app:cpv_unitSize="10dp"
          app:cpv_unitColor="@color/white"
          app:cpv_unitScale="1"
          app:cpv_rimColor="@color/secondary_background"
          app:cpv_rimWidth="10dp"
              app:cpv_barWidth="4dp"
              android:id="@+id/action_adherence"
              android:layout_width="70dp"
              android:layout_height="70dp" /&gt;
  
      &lt;TextView
          android:layout_gravity="center"
          android:id="@+id/action_name"
              android:textAppearance="@style/Base.TextAppearance.AppCompat.Small"
              android:layout_marginTop="5dp"
              android:text="Exercise"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content" /&gt;
  
  &lt;/LinearLayout&gt;
  </code></pre>
  
  <p>Adapter onBindAdaper() :</p>
  
  <pre><code>  if ((position+1)%3==0){
              LinearLayout.LayoutParams params = (LinearLayout.LayoutParams)adherenceHolder.adherenceSection.getLayoutParams();
              params.setMargins(0, 0, 0, 1);
              adherenceHolder.adherenceSection.setLayoutParams(params);
          }
          else
          {
              LinearLayout.LayoutParams params = (LinearLayout.LayoutParams)adherenceHolder.adherenceSection.getLayoutParams();
              params.setMargins(0, 0, 1, 1);
              adherenceHolder.adherenceSection.setLayoutParams(params);
  
          }
  </code></pre>
  
  <p><strong>Issue:</strong></p>
  
  <p>Since in my main activity I am setting the view to the gridlayout but in the adapter using the linear layout. So Android is not able to cast the linear layout to the grid layout. THat causes the exception.</p>
  
  <p>Is there any way I can able to cast the layout?</p>