china_hgb 2016-02-11 22:28 采纳率: 100%
浏览 2908
已采纳

安卓中的ImageView控件的背景透明

请问如何在安卓中将ImageView控件动态加载的图片的背景去掉?image.setAlpha(0)不起作用?

  • 写回答

3条回答 默认 最新

  • 林深 2016-02-12 02:23
    关注

    第一个问题:
    图片背景透明是由图片本身决定的,一般使用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)是一样的

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?