setCompoundDrawablesWithIntrinsicBounds vs. android:drawableRight

通过xml设置drawable有什么区别
android:drawableRight="@drawable/arrow_right_normal"

并通过代码设置drawable

bt.setCompoundDrawablesWithIntrinsicBounds(0,R.drawable.arrow_right_normal);

因为在第一种情况下,一切都像预期的那样工作(Buttontext是中心水平,图标位于右侧中间).
在第二种情况下,图标位于按钮的底部/中间,文本位于左上角.

解决方法

右边是第三个参数.最后一个底部
bt.setCompoundDrawablesWithIntrinsicBounds(0,R.drawable.arrow_right_normal,0);

Here文档

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...