首页 > 代码库 > 【原创】如何在Android中为TextView动态设置drawableLeft等

【原创】如何在Android中为TextView动态设置drawableLeft等

如何在Android中为TextView动态设置drawableLeft等

 
两种方式:
 
方式1:手动设置固有边界
1 Drawable drawable = getResources().getDrawable(resId);2 //注意查看方法TextView.setCompoundDrawables(Drawable, Drawable, Drawable, Drawable)3 //的注释,要求设置的drawable必须已经通过Drawable.setBounds方法设置过边界参数4 //所以,此种方式下该行必不可少5 drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight());6 setCompoundDrawables(drawable, null, null, null);

 

方式2:自动设置固有边界
1 setCompoundDrawablesWithIntrinsicBounds(resId, 0, 0, 0);2 //setCompoundDrawablesWithIntrinsicBounds(getResources().getDrawable(resId), null, null, null);