1. 程式人生 > >安卓開發——設定EditText的drawableLeft所匯入的圖片大小

安卓開發——設定EditText的drawableLeft所匯入的圖片大小

在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。