Android 徽章控件


Android 徽章控件

bingoogolapple/BGABadgeView-Android


https://github.com/bingoogolapple/BGABadgeView-Android



BGABadgeView-AndroidAndroid 徽章控件

Android 徽章控件 Android 徽章控件 Android 徽章控件

English Document

react-native-bga-badge-view

demo中演示了:

  • 微博底部tab显示最新微博条数
  • 微博列表用户头像显示显示右下角vip徽章
  • 微信消息界面用户新消息
  • 微信消息界面订阅号新消息
  • 使用v4包中的RoundedBitmapDrawable制作圆角头像
  • 拖拽删除徽章

爆炸效果参考的 ExplosionField 改成了只有一个View的情况,只刷新徽章附近的区域

效果图

Android 徽章控件

点击下载 Apk 或扫描下方二维码安装体验

Android 徽章控件

Gradle依赖

dependencies {
    compile 'cn.bingoogolapple:bga-badgeview:[email protected]'
}

目前支持的徽章类

类名 应用场景
BGABadgeRadioButton 微博首页底部导航
BGABadgeImageView 微博列表用户头像
BGABadgeTextView 其实这个可以用BGABadgeCheckedTextView代替
BGABadgeLinearLayout 列表item右侧消息条数
BGABadgeRelativeLayout 列表item右侧消息条数
BGABadgeFrameLayout 列表item右侧消息条数

接口说明

/**
 * 显示圆点徽章
 */
void showCirclePointBadge();

/**
 * 显示文字徽章
 *
 * @param badgeText
 */
void showTextBadge(String badgeText);

/**
 * 隐藏徽章
 */
void hiddenBadge();

/**
 * 显示图像徽章
 *
 * @param bitmap
 */
void showDrawableBadge(Bitmap bitmap);

/**
 * 设置拖动删除徽章的代理
 *
 * @param delegate
 */
void setDragDismissDelegage(BGADragDismissDelegate delegate);

/**
 * 是否显示徽章
 *
 * @return
 */
boolean isShowBadge();

自定义属性说明

属性名 说明 默认值
badge_bgColor 徽章背景色 Color.RED
badge_textColor 徽章文本的颜色 Color.WHITE
badge_textSize 徽章文本字体大小 10sp
badge_verticalMargin 徽章背景与宿主控件上下边缘间距离 4dp
badge_horizontalMargin 徽章背景与宿主控件左右边缘间距离 4dp
badge_padding 徽章文本边缘与徽章背景边缘间的距离 4dp
badge_gravity 徽章在宿主控件中的位置 BGABadgeImageView和BGABadgeRadioButton是右上方,其他控件是右边垂直居中
badge_dragable 是否开启拖拽删除徽章 false
badge_isResumeTravel 拖拽徽章超出轨迹范围后,再次放回到轨迹范围时,是否恢复轨迹 false
badge_borderWidth 徽章描边宽度 0dp
badge_borderColor 徽章描边颜色 Color.WHITE
badge_dragExtra 触发开始拖拽徽章事件的扩展触摸距离 4dp

扩展自己的BadgeView

继承特定的控件,实现BGABadgeable接口中相应的方法,并调用BGABadgeViewHelper中相应的方法,自定义控件实现方式请参考BGABadgeRadioButton,自定义组合控件实现方式请参考BGABadgeLinearLayout