天天看點

Android設定drawableTop時對圖檔進行比例縮放

本文針對的是通過底部導航欄布局時圖檔所出現的問題,假如使用小像素的圖檔,則圖檔顯示會非常模糊,若使用大像素圖檔,則會導緻底部菜單欄溢出!當我們對RadioButton設定

android:drawableTop="@drawable/rb_main_bg"屬性時,

可以将radiobutton添加到Drawable數組中,然後通過Rect對圖檔進行縮放,代碼如下:

RadioButton[] rb = new RadioButton[4];
        rb[0] = rb_main;
        rb[1] = rb_message;
        rb[2] = rb_find;
        rb[3] = rb_my;
        for(RadioButton r:rb){
            Drawable[] drawables = r.getCompoundDrawables();
            Rect rect = new Rect(0,0,drawables[1].getMinimumWidth()/2,drawables[1].getMinimumHeight()/2);
            drawables[1].setBounds(rect);
            r.setCompoundDrawables(null , drawables[1] , null ,null);
        }
           

這樣設定出來的圖檔會非常清晰好看,完美解決了圖檔縮放的問題!