drawable start not working with material button

You should use app:icon like this:

In the layout:

<Button
   ...
   app:icon="@drawable/ic_camera"
   style="@style/Widget.MaterialComponents.Button.TextButton"
/>

It is displayed at the start, before the text label. You can change icon gravity, tint or size.

For more information


Using

android:drawableLeft

will solve the problem, but will not give you RTL(Right to left) support. If your end user uses a different language which follow RTL, then your Button will not support it.

Are you managing the Button's property in the Activity or Fragment, as technically speaking,

android:drawableStart

should work.