How to programmatically set drawableLeft on Android button?

You can use the setCompoundDrawables method to do this. See the example here. I used this without using the setBounds and it worked. You can try either way. UPDATE: Copying the code here incase the link goes down Drawable img = getContext().getResources().getDrawable(R.drawable.smiley); img.setBounds(0, 0, 60, 60); txtVw.setCompoundDrawables(img, null, null, null); or Drawable img = getContext().getResources().getDrawable(R.drawable.smiley); … Read more