如何用textview设置drawableLeft属性

在麦子学院的论坛里,我看见很多android新手都在问textview设置drawableleft属性的方法,我把那位在麦子学院论坛里的问题复制下来了,然后我们一起来解答下: 
原问题描述: 
xml中的textView: 
1. <font face="宋体" size="3"> <TextView 
2. android:id="@+id/bookTitle" 
3. android:layout_width="match_parent" 
4. android:layout_height="wrap_content" 
5. android:layout_weight="1" 
6. android:drawableLeft="@drawableeckmark" 
7. android:gravity="center_vertical" 
8. android:textStyle="bold" 
9. android:textSize="24dip" 
10. android:maxLines="1" 
11. </font> <font face="宋体" size="3"> 
12. android:ellipsize="end"/> </font> 
如程序中所见我在xml中设置了 DrawableLeft。 
我想在代码中改变drawable。 
有什么方法可以使用代码为textview设置drawableLeft呢? 
解决方案: 
1. <font face="宋体" size="3"> 
2. public void setCompoundDrawables (Drawable left, Drawable top, Drawable right, Drawable bottom); </font> 
类似调用方法如下: 
1.在XML中使用 
1. <font face="宋体" size="3"> 
2. android:drawableLeft="@drawable/icon" </font> 
2.代码中动态变化 
1. <font face="宋体" size="3"> 
2. Drawable drawable= getResources().getDrawable(R.drawable.drawable); 
3. /// 这一步必须要做,否则不会显示. 
4. drawable.setBounds(0, 0, drawable.getMinimumWidth(), drawable.getMinimumHeight()); 
5. myTextview.setCompoundDrawables(drawable,null,null,null); </font> 
也或参考另一个函数 
1. <font face="宋体" size="3"> 
2. public void setCompoundDrawablesWithIntrinsicBounds (Drawable left, 
3. Drawable top, Drawable right, Drawable bottom) 
4. </font> 
在android界面开发过程中,有时候需要一个多行输入,实现代码如下: 
1. <font face="宋体" size="3"> <EditText 
2. android:id="@+id/editContent" 
3. android:layout_width="fill_parent" 
4. android:layout_height="wrap_content" 
5. android:minLines="3" 
6. android:textSize="18sp" </font> 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值