返回顶部
首页 > 资讯 > 精选 >Android消息个数提醒控件使用详解
  • 956
分享到

Android消息个数提醒控件使用详解

2023-05-30 16:05:24 956人浏览 安东尼
摘要

前言在QQ中有消息个数提醒的控件,虽然现在没用到,但是以后可能会用到,所以就实现它,也不难。实现效果图如下:先贴源码了:public class TipNumberView extends TextView { private Paint

前言

在QQ中有消息个数提醒的控件,虽然现在没用到,但是以后可能会用到,所以就实现它,也不难。

实现

效果图如下:

Android消息个数提醒控件使用详解

先贴源码了:

public class TipNumberView extends TextView {  private Paint mBgPaint ;  PaintFlagsDrawFilter pfd;   public TipNumberView(Context context, AttributeSet attrs) {    super(context, attrs);    //初始化画笔    mBgPaint = new Paint();    mBgPaint.setColor(Color.RED);    mBgPaint.setAntiAlias(true);    pfd = new PaintFlagsDrawFilter(0, Paint.ANTI_ALIAS_FLAG|Paint.FILTER_BITMAP_FLAG);   }  public TipNumberView(Context context) {    this(context,null);  }  @Override  protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {    super.onMeasure(widthMeasureSpec, heightMeasureSpec);    //得到测量的高度和宽度    int measuredWidth = getMeasuredWidth();    int measuredHeight = getMeasuredHeight();    int max = Math.max(measuredWidth, measuredHeight);    //设置控件区域大小    setMeasuredDimension(max, max);  }  //设置背景颜色  @Override  public void setBackgroundColor(int color){    mBgPaint.setColor(color);  }    public void setNotifiText(int text){    setText(text+"");  }  public void setNotifiText(String text){    setText(text);  }  //绘图  @Override  public void draw(canvas canvas) {    //设置绘图无锯齿    canvas.setDrawFilter(pfd);    canvas.drawCircle(getWidth()/2, getHeight()/2, Math.max(getWidth()/2, getHeight())/2, mBgPaint);    super.draw(canvas);  }}

--结束END--

本文标题: Android消息个数提醒控件使用详解

本文链接: https://lsjlt.com/news/219911.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作