在Android中,BadgeView是一个用于在应用图标上显示一个小圆点的视图。要设置BadgeView的显示时长,你可以使用Handler
和Runnable
来实现。以下是一个简单的示例:
build.gradle
文件中添加以下依赖:dependencies {
implementation 'com.google.android.material:material:1.4.0'
}
<ImageView
android:id="@+id/app_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher_background" />
ImageView appIcon = findViewById(R.id.app_icon);
BadgeView badgeView = new BadgeView(this, appIcon);
badgeView.setNumber(5); // 设置显示的圆点数量
badgeView.setNumberColor(Color.RED); // 设置圆点的颜色
badgeView.setTextColor(Color.WHITE); // 设置文本颜色
Handler
和Runnable
设置显示时长:int duration = 3000; // 设置显示时长,单位为毫秒(3秒)
handler.postDelayed(new Runnable() {
@Override
public void run() {
badgeView.remove(); // 移除BadgeView
}
}, duration);
这样,BadgeView将在指定的时长后自动移除。请注意,这个示例仅适用于AndroidX库。如果你使用的是旧版的Android支持库,请根据相应的库进行相应的调整。