0
点赞
收藏
分享

微信扫一扫

小米顶部弹窗


看到QQ和微信顶部消息有时会有弹窗,想着自己能不能弄个出来,于是百度,发现一个概念:横幅通知,感兴趣的可以去百度。

然后各种苦逼的复制粘贴,发现:小米不能直接通过横幅通知实现该功能,会直接跳转到一个新的页面,根本看不到横幅通知,难道是我眼瞎?

好吧,再找,再git上找到一个,但还是不能用:

​​https://github.com/zzz40500/HeadsUp​​

第三个点击直接bug掉了,异常:

no valid smallicon

我于是找源码,发现已经设置了:

HeadsUp headsUp1 = new HeadsUp.Builder(MainActivity.this)
.setContentTitle("标题")
//要显示通知栏通知,这个一定要设置
.setSmallIcon(R.drawable.icon)
//2.3 一定要设置这个参数,负责会报错
.setDefaults(NotificationCompat.DEFAULT_ALL)
.setLargeIcon(BitmapFactory.decodeResource(getResources(), R.drawable.icon))
.setContentIntent(pendingIntent)
.setContentText("这个是自定义通知")
.buildHeadUp();


于是查看HeadsUp类,它是这样的:

public Builder setSmallIcon(int icon) {
headsUp.setIcon(icon);
// super.setSmallIcon(icon);
return this;
}
protected Builder setIcon(int icon){
super.setSmallIcon(icon);
return this;
}

好吧,你厉害,把setSmallIcon注释掉了,解开注释,或者修改protected为public,再加一个setIcon。

比较好的做法是:

public Builder setSmallIcon(int icon) {
super.setSmallIcon(icon);
return this;
}
protected Builder setIcon(int icon){
headsUp.setIcon(icon);
return this; }



这样才比较合理。

举报

相关推荐

Element弹窗中弹出弹窗

点击返回顶部

Android 顶部悬停

Flutter 顶部TabBar

小米xiaomi

返回顶部JS

CSS弹窗

0 条评论