2018-09-26【Android仿微信未讀消息數(shù)提示數(shù)字之BadgeView的使用】

給View添加一個角標(biāo)---ViewBadger的使用

開源地址:https://github.com/jgilfelt/android-viewbadger

1、設(shè)置文字樣式角標(biāo)

ImageView iv = (ImageView) findViewById(R.id.jiaobiao_iv);

BadgeView badgeView =newBadgeView(this, iv);// 將需要設(shè)置角標(biāo)的View 傳遞進(jìn)去

badgeView.setBadgePosition(BadgeView.POSITION_TOP_RIGHT);// 設(shè)置在右上角

badgeView.setTextSize(9);// 設(shè)置文本大小

badgeView.setBadgePosition(BadgeView.POSITION_TOP_RIGHT);// 設(shè)置在右上角

badgeView.setText("5");// 設(shè)置要顯示的文本

badgeView.show();// 將角標(biāo)顯示出來

2、設(shè)置圖片樣式的角標(biāo)

BadgeView實際上是一個TextView,我們可以在代碼中不去設(shè)置它的Text,僅僅設(shè)置它的Background,

就可以實現(xiàn)一個圖片樣式的角標(biāo)。

ImageView iv = (ImageView) findViewById(R.id.jiaobiao_iv);

BadgeView badgeView =newBadgeView(this, iv);

badgeView.setBackgroundResource(R.drawable.jb);// 設(shè)置角標(biāo)的背景

badgeView.setBadgePosition(BadgeView.POSITION_TOP_RIGHT);// 設(shè)置在右上角

badgeView.setBadgeMargin(0,0);// 設(shè)置水平和垂直方向的Margin(默認(rèn)距邊界有一定的距離)

badgeView.show();// 將角標(biāo)顯示出來


沒事在整理以前上班收藏的一些筆記,發(fā)現(xiàn)其中的關(guān)鍵字部分有個 BadgeView 不知道是什么東東,于是乎搜了下,發(fā)現(xiàn)也是一個項目中很常用的功能。比如:

?這樣的,很常見。

這是官方的demo效果 :https://github.com/qstumn/BadgeView

一些特性

隨意定制外觀,包括Badge位置、底色、邊框、陰影、文字顏色(支持透明色)、大小、內(nèi)外邊距等

Badge數(shù)字小于0時顯示dot,等于0時隱藏整個Badge,在普通模式下超過99時顯示99+,精確模式下顯示具體值

支持設(shè)置文本內(nèi)容

支持設(shè)置圖片背景

支持類似QQ的拖拽消除效果(默認(rèn)關(guān)閉)

支持以動畫的方式隱藏Badge

添加依賴:

compile ‘q.rorbin:badgeview:1.1.2’

調(diào)用:

TextView textview = (TextView) findViewById(R.id.textview);new QBadgeView(this).bindTarget(textview).setBadgeNumber(12);

1

2

API:

---------------------本文來自 帥氣大果果 的CSDN 博客 ,全文地址請點擊:https://blog.csdn.net/qq_34471736/article/details/77645953?utm_source=copy

注意事項:

請不要在xml中創(chuàng)建Badge

Badge和TargetView綁定是采用替換TargetView的Parent方式實現(xiàn)的,同時將Parent的Id和TargetView的Id設(shè)置成一樣來保證不會在RelativeLayout中出現(xiàn)位置錯亂問題,所以在bindTarget后再次使用findViewById(TargetViewId)得到的會是Parent而不是TargetView,此時建議使用Badge.getTargetView方法來獲取TargetView

這是將官方demo精簡后的

源碼

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容