RecyclerView Scroll Lag

So im currently using a recyclerview to show a produts list,neverthless the performance is quite poor and i would like some advice and some tips how to solve/improve it…

//////ProductsActivity  
  
public class ProductsActivityextends AppCompatActivityimplements NavigationView.OnNavigationItemSelectedListener {
private Toolbarsidebar;  
 private DrawerLayoutlayout;  
 private ActionBarDrawerToggletoggle;  
@Override  
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);  
setContentView(R.layout.activity\_products\_menu);  
layout = (DrawerLayout) findViewById(R.id.drawer\_layout);  
toggle =new ActionBarDrawerToggle(this, layout, R.string.open, R.string.close);  
  
layout.addDrawerListener(toggle);  
toggle.syncState();  
getSupportActionBar().setDisplayHomeAsUpEnabled(true);  
NavigationView navigationView=(NavigationView)findViewById(R.id.navigationView);  
navigationView.setNavigationItemSelectedListener(this);  
  
  
RecyclerView recyclerView =findViewById(R.id.item\_list);  
List<ProductsItemActivity> mlist=new ArrayList<>();  
mlist.add(new ProductsItemActivity(R.drawable.cofee\_product,"Cafés",R.drawable.coffee));  
mlist.add(new ProductsItemActivity(R.drawable.beer\_product,"Bebidas Alcoolicas",R.drawable.drink));  
mlist.add(new ProductsItemActivity(R.drawable.food\_product,"Pratos do Dia",R.drawable.fork));  
mlist.add(new ProductsItemActivity(R.drawable.breakfast\_product,"Pequenos-Almoços",R.drawable.breakfast));  
Adapter adapter=new Adapter(this,mlist);  
recyclerView.setAdapter(adapter);  
recyclerView.setLayoutManager(new LinearLayoutManager(this));  
recyclerView.setHasFixedSize(true);  
recyclerView.setItemViewCacheSize(50);  
recyclerView.setDrawingCacheEnabled(true);  
recyclerView.setDrawingCacheQuality(View.DRAWING\_CACHE\_QUALITY\_HIGH);  
  
  
}

public boolean onOptionsItemSelected(MenuItem item) {
if (toggle.onOptionsItemSelected(item)) {
return true;  
}
return super.onOptionsItemSelected(item);  
}

public boolean onNavigationItemSelected(MenuItem item){
int id=item.getItemId();  
  
 if(id==R.id.nav\_feed){
Intent a=new Intent(ProductsActivity.this,MainActivity.class);  
startActivity(a);  
}
if(id==R.id.nav\_products){
Intent b=new Intent(ProductsActivity.this,ProductsActivity.class);  
startActivity(b);  
  
}
return false;  
}



}




  
////////Adapter  
  
  
public class Adapterextends RecyclerView.Adapter<Adapter.myViewHolder> {

ContextmContext;  
List<ProductsItemActivity>mData;  
  
Adapter(){
setHasStableIds(true);  
  
}


public Adapter(Context mContext, List<ProductsItemActivity> mData){
this.mContext=mContext;  
 this.mData=mData;  
}

@Override  
public myViewHolderonCreateViewHolder(ViewGroup parent, int viewType) {
LayoutInflater inflater=LayoutInflater.from(mContext);  
View v=inflater.inflate(R.layout.activity\_products\_item,parent,false);  
 return new myViewHolder(v);  
}

@Override  
public void onBindViewHolder(myViewHolder myViewHolder, int position) {

myViewHolder.product\_img.setImageResource(mData.get(position).getBackground());  
myViewHolder.product\_type\_img.setImageResource(mData.get(position).getProductImg());  
myViewHolder.product\_text.setText(mData.get(position).getProductName());  
  
  
}

@Override  
public int getItemCount() {
return mData.size();  
}

public class myViewHolderextends RecyclerView.ViewHolder {

ImageViewproduct\_img, product\_type\_img;  
TextViewproduct\_text;  
  
 public myViewHolder(View itemView) {
super(itemView);  
  
product\_img = itemView.findViewById(R.id.product\_img);  
product\_type\_img = itemView.findViewById(R.id.product\_type\_img);  
product\_text = itemView.findViewById(R.id.product\_text);  
}
}

}  

What does the Android profiler identify as the hot spots?

Do you still experience scroll lag with a different view or layout?