利用BlurMaskFilter实现具有阴影效果的Imageview
来源:互联网 发布:淘宝特卖网qitemei 编辑:程序博客网 时间:2024/06/05 18:12
主要是BlurMaskFilter bf=new BlurMaskFilter(20,BlurMaskFilter.Blur.INNER);
设置影音大小为20,模式为Inner:解释为Blur inside the border
paint.setMaskFilter(bf);设置画笔
import android.content.Context;import android.graphics.Bitmap;import android.graphics.BlurMaskFilter;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.graphics.Rect;import android.graphics.drawable.BitmapDrawable;import android.graphics.drawable.Drawable;import android.support.annotation.Nullable;import android.util.AttributeSet;/** * Created by yang on 2017/8/7. */public class shadowimageview extends android.support.v7.widget.AppCompatImageView { private Paint paint; public shadowimageview(Context context) { this(context,null); } public shadowimageview(Context context, @Nullable AttributeSet attrs) { this(context, attrs,0); } public shadowimageview(Context context, @Nullable AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); paint=new Paint(); init(); } private void init() { BlurMaskFilter bf=new BlurMaskFilter(20,BlurMaskFilter.Blur.INNER); paint.setColor(Color.GRAY); paint.setMaskFilter(bf); } @Override protected void onDraw(Canvas canvas) { Drawable drawable=getDrawable(); Bitmap bit=((BitmapDrawable)drawable).getBitmap(); setBackgroundDrawable(null); int x=getWidth(); int y=getHeight(); Rect rect=new Rect(20,20,x,y); Rect rect1=new Rect(0,0,x-20,y-20); int x2=bit.getWidth(); int y2=bit.getHeight(); Rect src=new Rect(0,0,x2,y2); canvas.drawBitmap(bit.extractAlpha(paint,null),src,rect,paint); canvas.drawBitmap(bit,src,rect1,null); //super.onDraw(canvas); }}canvas.drawBitmap(bit.extractAlpha(paint,null),src,rect,paint);绘画影音canvas.drawBitmap(bit,src,rect1,null);叠上原图片
效果:
阅读全文
0 0
- 利用BlurMaskFilter实现具有阴影效果的Imageview
- 自定义控件之ImageView实现点击之后有阴影效果
- 利用钩子实现菜单阴影效果
- vc 利用钩子实现菜单阴影效果
- 利用钩子实现菜单阴影效果2
- 图片阴影效果的实现
- 实现textview的阴影效果
- 图片阴影效果的实现
- 图片阴影效果的实现
- 图片阴影效果的实现
- 实现字体的阴影效果
- imageView阴影和圆角效果的处理
- 利用CSS制作的阴影效果
- ImageView 实现 floatingActionButton 的效果
- (lazarus)使chart文字具有阴影效果
- cocos2d-x 利用CCLabelTTF制作文字描边与阴影效果的实现方法
- cocos2d-x 利用CCLabelTTF制作文字描边与阴影效果的实现方法
- cocos2d-x 利用CCLabelTTF制作文字描边与阴影效果的实现方法
- spring源码分析之@ImportSelector、@Import、ImportResource工作原理分析
- 优化SQL语句的一些规则
- ${sessionScope.user}的使用方法
- PHP关于常用的排序算法
- 5-13 词频统计 (30分)
- 利用BlurMaskFilter实现具有阴影效果的Imageview
- mysql --- union
- 二叉树的建立与遍历【模板】
- 安卓 运行、调试 配置 android Run/debug configurations
- mysql中You can't specify target table for update in FROM clause错误
- Java进阶书籍推荐
- pscp使用
- Innosetup 将文件安装到system32 、syswow64下
- 看2017年的最新数据:哪种编程语言才是真正的王者?