Android最新消息数目提醒控件BadgeView的使用
最近项目中需要用到这样的一个功能 就是消息数量的提示,本想着自己去在布局中自定义一个控件 把它写死 给它一个num(消息数量的属性 )可以进行设置消息数量,但是考虑后后期的样式 以及在不同View上显示 就果断放弃了 偶尔一次机会 看到一位大神在放微信app的时候用到了一个控件 是的 就是BadgeView 这是github上一个开源的控件 专门用来做消息数目提示的 这个是它的github地址:https://github.com/stefanjauker/BadgeView 使用也是非常的简单
BadgeViewbv=
newBadgeView(getActivity());
bv.setBadgeCount(42);//设置提示消息数量
bv.setTargetView(button);//设置显示消息的view
这样就OK了 是不是很简单
效果图呢 别慌 往下看
不知道大家平时玩Qq 有没有注意到 现在的QQ的消息提示 是有动画效果的 而且可以支持自由推拽消失
说到这里 很能有些小伙伴 尤其是动画玩的不是很6的小伙伴 就没有耐心了 但是 请注意 但是 如果我告诉你这些效果有人已经集成好了
你要做的就是一行代码 引入就可以了 你是不是很开心 是不是很兴奋 没错 当初小编就是这种心情 下面是常用的使用方法
QBadgeView qBadgeView = new QBadgeView(getBaseContext()); qBadgeView.bindTarget(textView);//设置要显示消息提示的View 控件 qBadgeView.setBadgeNumber(2);//设置Badge数字 qBadgeView.setBadgeTextColor(Color.parseColor("#ff123564"));//设置文本颜色 qBadgeView.setExactMode(true);//设置是否显示精确模式数值 //qBadgeView.setBadgeGravity(Gravity.START|Gravity.TOP);//设置Badge相对于TargetView的位置 //qBadgeView.setGravityOffset(1.0f, true);//设置外边距 //qBadgeView.setBadgePadding(1.0f, true);//设置内边距 qBadgeView.setOnDragStateChangedListener(new Badge.OnDragStateChangedListener() { @Override public void onDragStateChanged(int i, Badge badge, View view) { Log.e(TAG, "onDragStateChanged: i=" + i + "badge=" + badge + "view"); } });//打开拖拽消除模式并设置监听
有些没有用到的 参考下面的 这是开源文档中的方法说明
好了 上图
最后还是那句 喜欢点个赞 有问题欢迎骚扰