程式碼中修改TextView的DrawableLeft圖片
先把解決程式碼貼上來:
Drawable weather = getResources().getDrawable(R.drawable.sunday);
weather.setBounds(0, 0, weather.getMinimumWidth(), weather.getMinimumWidth());
tv_choose_weather.setCompoundDrawables(weather, null, null, null);
/***********分割線*********************/
本來覺得在TextView中新增一個android:drawableLeft="@drawable/org3_ww0"
屬性比一個ImageView+一個TextView方便多了,結果今天需要更換TextView的DrawableLeft圖片時傻眼了,遍訪名醫後方得解法,記錄如下:
TextView有個方法叫setCompoundDrawables(left,top,right,bottom)
就是用來設定、修改他旁邊的圖片的,我們只需要把新的Drawable傳到對應的引數位置即可。
Drawable可以通過getResources().getDrawable(id)方法得到,例如:
Drawable weather = getResources().getDrawable(R.drawable.sunday);
你以為這就結束了?No
setCompoundDrawables() 的引數Drawable物件,必須先呼叫setBounds(int left, int top, int right, int bottom)方法,設定好這個圖片要繪製的矩形區域大小。
所以就有了解決程式碼的第二行:
weather.setBounds(0, 0, weather.getMinimumWidth(), weather.getMinimumWidth());
對了,那個setBounds的引數怎麼傳呢?
其實他讓你傳入的是四個頂點座標,然後編譯器進行運算求出矩形的長寬。我們可以直接在left、top傳入0,right、bottom傳入要繪製圖片的寬和高就行了。
相關文章
- Android通過程式碼修改圖片顏色Android
- PHP修改圖片PHP
- 使用Jsoup解析Html == TextView顯示html圖片的方法JSHTMLTextView
- android程式碼中動態調整圖片的位置Android
- PHP 修改圖片顏色(生成彩色二維碼)PHP
- android 修改圖片的寬高Android
- 圖片上傳的asp程式碼 (轉)
- canvas-修改圖片亮度Canvas
- 修改SVG圖片的大小和顏色SVG
- TextView:圖文混排TextView
- 深入解析微信小程式頁面中實現的儲存圖片(附程式碼)微信小程式
- 螢幕適配的頂級淫技:使用 TextView 來顯示圖片TextView
- jQuery圖片預載入程式碼jQuery
- CSS設定背景圖片程式碼CSS
- ASP上傳圖片程式碼例子
- 【圖片+程式碼】:GCC 連結過程中的【重定位】過程分析GC
- Android之TextView設定drawableRight等圖片文字間隔AndroidTextView
- 圖片不存在使用預設圖片替代程式碼例項
- 將圖片以灰色方式顯示的程式碼
- 馬賽克效果的JS圖片切換程式碼JS
- node實現批量修改圖片尺寸
- IDEA 修改編輯背景圖片Idea
- 圖片等比例縮放程式碼
- css圖片變黑白程式碼例項CSS
- 利用css切割圖片程式碼例項CSS
- IDEA中修改程式碼中的註釋顏色Idea
- 為Symbian程式中的圖片增加半透明效果
- php 隨機顯示圖片的函式程式碼PHP隨機函式
- canvas實現的圖片縮放程式碼例項Canvas
- css程式碼與引用圖片的相對路徑CSS
- css實現的圖片水平垂直居中程式碼CSS
- CSS實現的背景圖片替代顏色程式碼CSS
- Java圖片剪裁併儲存的程式碼實現Java
- 自己積累的一些Emgu CV程式碼(主要有圖片格式轉換,圖片裁剪,圖片翻轉,圖片旋轉和圖片平移等功能)
- Android--TextView 文字顯示和修改AndroidTextView
- Glide中解析圖片(靜態圖片)IDE
- html程式碼處理(如圖片、字型大小)HTML
- 隨機漂浮圖片廣告例項程式碼隨機