If you are using a RecyclerView to display the cards, you can set the layout manager to a StaggeredGridLayoutManager:
mRecyclerView = (RecyclerView) findViewById(R.id.my_recycler_view);
// use this setting to improve performance if you know that changes
// in content do not change the layout size of the RecyclerView
mRecyclerView.setHasFixedSize(true);
// use a linear layout manager
mLayoutManager = new StaggeredGridLayoutManager(1, StaggeredGridLayoutManager.VERTICAL);
mRecyclerView.setLayoutManager(mLayoutManager);
If your really want to shake things up, you could change the widths of the grid items dynamically from within the adapter. You would need to use LayoutParams to accomplish this. LayoutParams documentation can be found here: http://developer.android.com/reference/android/widget/LinearLayout.LayoutParams.html
Hope that answers your question!