在 Xamarin.Android 上以编程方式绘制 DrawableLeft?

DrawableLeft programmatically on Xamarin.Android?

我正在开发 Xamarin Android 应用程序,我正在通过我的 styles.xml

将以下样式设置为按钮
<style name="button_style_1" parent="@style/button_style_default">
  <item name="android:drawableLeft">@drawable/my_icon</item>
  <item name="android:drawablePadding">28dp</item>
  <item name="android:padding">5dp</item>
</style>

一切正常,但现在我需要以编程方式将上述属性设置到我的按钮。 在 Xamarin.Android 中最好的方法是什么?

对于drawableLeft

 var draw = ContextCompat.Drawable(this, Resource.Drawable.your_drawable)
 button.SetCompoundDrawablesWithIntrinsicBounds(draw, null, null, null);

Note : this is context of the Activity.

对于 drawablePadding 使用 CompoundDrawablePadding

对于 padding 使用 SetPadding.

重要提示:

CompoundDrawablePadding with a negative padding and SetPadding with a positive padding to counter creates a centered effect.

看看就告诉我吧