昨天在处理button上的遇到的问题,
第一个按钮没有启用显示的状态,。。。按钮上不显示右箭头括号。
解决方法:setCompoundDrawables(Drawable left, Drawable top, Drawable right, Drawable bottom)
api原文为:
Sets the Drawables (if any) to appear to the left of, above, to the right of, and below the text. Use null if you do not want a Drawable there. The Drawables must already have had 意思大概就是:可以在上、下、左、右设置图标,如果不想在某个地方显示,则设置为null。但是Drawable必须已经setBounds(Rect)。意思是你要添加的资源必须已经设置过初始位置、宽和高等信息。 |
后来才发现问题,是对drawable的边界进行处理时把参数传反了,修改后的可起作用代码如下:
1 Drawable dra= getResources().getDrawable(R.drawable.button_yjt);
2 dra.setBounds( 0, 0, dra.getMinimumWidth(),dra.getMinimumHeight());
3 btn1.setCompoundDrawables(null, null, dra, null);