// build.gradle
implementation 'com.github.jgilfelt:android-viewbadger:1.0.0' // 或其他維護中庫
// 代碼
BadgeView badge = new BadgeView(this, messageIconImageView);
badge.setText("5");
badge.show();
// 閱讀後
badge.setText(""); // 或 badge.hide();
// 布局
// 代碼
TextView redDot = findViewById(R.id.redDot);
redDot.setText(String.valueOf(unreadCount));
redDot.setVisibility(unreadCount > 0 ? View.VISIBLE : View.GONE);
// 閱讀後
redDot.setVisibility(View.GONE);
核心邏輯:數據層未讀數變化 → UI 層更新紅點顯示/隱藏,可在消息讀取回調、推送接收、App 啟動時觸發刷新。