TextView的xml

<TextView
                android:id="@+id/textciew1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:background="#000"
                android:drawableRight="@drawable/button_nav_down"
                android:gravity="center_vertical"
                android:paddingLeft="16dp"
                android:paddingRight="16dp"
                android:text="展开"
                android:textColor="#fff"
                 />
在代码中如果要修改drawableRight设置的图片可以使用

setCompoundDrawables( Drawable left, Drawable top, Drawable right, Drawable bottom)
Drawable可以通过 Drawable nav_up=getResources().getDrawable(R.drawable.button_nav_up);得到

但是API提示,setCompoundDrawables() 调用的时候,Drawable对象必须调用setBounds(int left, int top, int right, int bottom)方法,于是我们加一行代码就可以了

nav_up.setBounds(0, 0, nav_up.getMinimumWidth(), nav_up.getMinimumHeight());

代码合在一起是这样的:

					Drawable nav_up=getResources().getDrawable(R.drawable.button_nav_up);
					nav_up.setBounds(0, 0, nav_up.getMinimumWidth(), nav_up.getMinimumHeight());
					textview1.setCompoundDrawables(null, null, nav_up, null);


Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐