繼承自Button的一個控件,小紅點和數字,是直接繪製到Canvas上的,老是在右上角。之看以看起來,角標已經超出了Button,是由於在繪製Button的時候,對Canvas進行了縮放。譬如:html
[html] view plain copyjava
這樣的一個NotificationButton,設置的寬和高爲100dp方形,circleSize,就是小紅點的大小,爲12dp。這樣設置的話,實際上,你看到的Button的大小,只有88dp,是總的寬度減去小紅點的大小。android
在android studio中引用:git
[plain] view plain copygithub
而後在佈局文件中:app
[html] view plain copyide
由於它是繼承自Button,全部Button的屬性,均可以使用。除些以外,還有三個自定義屬性:佈局
[html] view plain copyspa
而後是在java代碼中:.net
[java] view plain copy
只有一個方法,setNotificationNumber方法,設置了它,就能夠直接顯示通知數量了,
大於99的,顯示99+,
小於等於0的,不顯示。
源代碼地址: