請問如何在安卓中將ImageView控件動態加載的圖片的背景去掉?image.setAlpha(0)不起作用?
第一個問題:
圖片背景透明是由圖片本身決定的,一般使用png格式的圖片,因為具有透明屬性,而且需要事先用工具將背景弄成透明的才行。
當然,你實在是不想事先就用透明圖,你也可以對bitmap進行處理,因為你可以將圖片加載成為bitmap,而bitmap是可以進行色值的編輯的,bitmap是一個位圖,你可以一位一位去進行色彩處理,比如說你指定紅色ARGB(255,255,0,0)為透明色,那麼,你在處理的時候只需要將所有的紅色轉化為(0,0,0,0)就行了(其中A表示的是透明度,改成0就行了),你可以通過bitmap.getPixel(int x,int y),獲取每個位的色值,再通過bitmap.setPixel(int x,int y,int color)來設置這個位的色值。通過這個,你可以隨便改透明,當然,你改A的值的時候也能夠改透明度。
第二個問題:
image.setAlpha(0)這個image應該是ImageView是吧,那麼你這個操作會將這個ImageView一整個變成透明,不只是圖片的背景哦,這個效果和image.setVisibility(View.INVISIBLE)是一樣的