安卓開發——設定EditText的drawableLeft所匯入的圖片大小
阿新 • • 發佈:2019-02-03
在EditText的使用中,如登入頁面的輸入框,經常會給EditText設定drawableLeft,即新增左側圖片,但卻沒有屬性對這個圖片大小進行控制,只能靠圖片自身的解析度來控制大小。可這時就出現一個問題,想要圖片大小適合,解析度就要低,清晰度感人,但如果想要高清晰度,即解析度高,圖片就很大,完全不適合。
解決辦法如下:
在activity中,設定drawable大小:
Drawable leftDrawable = edittext.getCompoundDrawables()[0]; if(leftDrawable!=null){ leftDrawable.setBounds(0, 0, 60, 60); edittext.setCompoundDrawables(leftDrawable, edittext.getCompoundDrawables()[1], edittext.getCompoundDrawables()[2], edittext.getCompoundDrawables()[3]); }
需要注意的是,setbounds(x0,y0,x1,y1)的引數分別是:x0——圖片左邊緣距左方物體距離、y0——上邊緣距上方物體距離、x1——右邊緣距左方物體距離、y1——下邊緣距上方物體距離,這裡的單位是畫素px。