title: No ripple effect on touch in recyclerview
body: <p>I have a recyclerview with four grid elements (2*2) that work like a menu. However, when i click on them no ripple effect is shown. It just takes me to the next activity without any visual confirmation that the view was pressed. Can anyone help?</p>
  
  <p>MainActivity</p>
  
  <pre><code>public class MainActivity extends AppCompatActivity implements MainMenuAdapter.OnItemClickListener {
  
      Toolbar toolbar;
      private static List&lt;ViewModel&gt; tileItems = new ArrayList&lt;&gt;();
  
      static {
          tileItems.add(new ViewModel("Activity", "#3F51B5", R.drawable.activity));
          tileItems.add(new ViewModel("Profile", "#E91E63", R.drawable.profile));
          tileItems.add(new ViewModel("Training", "#FF5722", R.drawable.training));
          tileItems.add(new ViewModel("Diet", "#4CAF50", R.drawable.diet));
      }
  
      @Override
      protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_main);
  
          final RecyclerView recyclerView = (RecyclerView) findViewById(R.id.recyclerView);
          recyclerView.setLayoutManager(new GridLayoutManager(this, 2));
          MainAdapter adapter = new MainAdapter(tileItems, MainActivity.this);
          recyclerView.setAdapter(adapter);
          adapter.setOnItemClickListener(this);
  
  
          // Toolbar
          toolbar = (Toolbar) findViewById(R.id.toolbar);
          setSupportActionBar(toolbar);
  
      }
  
      @Override
      public void onBackPressed() {
          this.moveTaskToBack(true);
  //        this.finishAffinity();
      }
  
      @Override
      public boolean onCreateOptionsMenu(Menu menu) {
          // Inflate the menu; this adds items to the action bar if it is present.
          getMenuInflater().inflate(R.menu.menu_main, menu);
          return true;
      }
  
      @Override public void onItemClick(View view, ViewModel viewModel) {
      }
  }
  </code></pre>
  
  <p>MainAdapter</p>
  
  <pre><code>public class MainAdapter extends RecyclerView.Adapter&lt;MainMenuAdapter.ViewHolder&gt; implements View.OnClickListener {
  
      private List&lt;ViewModel&gt; items;
      private OnItemClickListener onItemClickListener;
      private Context context;
  
      // Adapter constructor
      public MainAdapter(List&lt;ViewModel&gt; items, Context context) {
          this.items = items;
          this.context = context;
      }
  
      public void setOnItemClickListener(OnItemClickListener onItemClickListener) {
          this.onItemClickListener = onItemClickListener;
      }
  
      @Override
      public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
  
          View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.main_item, parent, false);
          return new ViewHolder(v);
      }
  
      @Override
      public void onBindViewHolder(ViewHolder viewHolder, int position) {
  
          final ViewModel dataItem = items.get(position);
          viewHolder.colorBlock.setBackgroundColor(dataItem.getColor());
          viewHolder.menuName.setText(dataItem.getName());
          viewHolder.menuIcon.setImageResource(dataItem.getImage());
          viewHolder.itemView.setTag(dataItem);
          if (dataItem.getActivity() != null) {
              viewHolder.colorBlock.setOnClickListener(new View.OnClickListener() {
                  @Override
                  public void onClick(View view) {
                      Intent i = new Intent(context, dataItem.getActivity());
                      context.startActivity(i);
  
                  }
              });
          }
      }
  
      @Override
      public int getItemCount() {
          return items.size();
      }
  
      @Override public void onClick(final View v) {
          // Give some time to the ripple to finish the effect
          if (onItemClickListener != null) {
              new Handler().postDelayed(new Runnable() {
                  @Override public void run() {
                      onItemClickListener.onItemClick(v, (ViewModel) v.getTag());
                  }
              }, 200);
          }
      }
  
      /** This is our ViewHolder class */
      public static class ViewHolder extends RecyclerView.ViewHolder {
  
          public TextView menuName;
          public View colorBlock;
          public ImageView menuIcon;
  
          public ViewHolder(View convertView) {
              super(convertView); // Must call super() first
  
              menuName = (TextView) convertView.findViewById(R.id.menuName);
              colorBlock = (View) convertView.findViewById(R.id.colorBlock);
              menuIcon = (ImageView) convertView.findViewById(R.id.menuItem);
          }
      }
  
      public interface OnItemClickListener {
  
          void onItemClick(View view, ViewModel viewModel);
  
      }
  }
  </code></pre>
  
  <p>activity_main.xml</p>
  
  <pre><code>&lt;RelativeLayout
      xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:tools="http://schemas.android.com/tools"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      tools:context=".MainActivity"&gt;
  
      &lt;include
          android:id="@+id/toolbar"
          layout="@layout/toolbar"
          android:layout_height="wrap_content"
          android:layout_width="match_parent"/&gt;
  
      &lt;android.support.v7.widget.RecyclerView
          android:id="@+id/recyclerView"
          android:layout_below="@id/toolbar"
          android:layout_width= "match_parent"
          android:layout_height = "match_parent" /&gt;
  
  &lt;/RelativeLayout&gt;
  </code></pre>
  
  <p>main_item.xml</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:clickable="true"
      android:focusable="true"
      android:foreground="?android:attr/selectableItemBackground"&gt;
  
      &lt;View
          android:id="@+id/colorBlock"
          android:layout_width="match_parent"
          android:layout_height="170dp" /&gt;
  
      &lt;ImageView
          android:id="@+id/menuItem"
          android:layout_width="120dp"
          android:layout_height="120dp"
          android:layout_centerHorizontal="true"
          android:padding="16dp"
          /&gt;
  
      &lt;TextView
          android:id="@+id/menuName"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:padding="16dp"
          android:layout_centerHorizontal="true"
          android:layout_alignParentBottom="true"
          android:textColor="@android:color/white"
          android:textSize="16sp"/&gt;
  &lt;/RelativeLayout&gt;
  </code></pre>