NotificationManager 使用Bitmap做图标
自定义带倒影和偏转的超炫Gallery
http://www.eoeandroid.com/thread-236334-1-1.html
GPS封装类,封装了GPS细节,通过start和stop调用
http://www.eoeandroid.com/thread-236426-1-1.html
关于Zxing二维码扫描开灯的问题
http://www.eoeandroid.com/thread-235785-1-1.html
---------------------------帖子正文-------------------------
今天看到EOE问答里面有这“[Android 界面]NotificationManager 如何使用Bitmap做图标 http://www.eoeandroid.com/thread-230996-1-1.html ”这样一个问题,在论坛搜索也没有好的案例
特写一个简单的demo供大家参考
今天发布的是NotificationManager 使用Bitmap做图标
关键code
public void notification(int flag) { Notification notification = new Notification(); //设置statusbar显示的icon notification.icon = R.drawable.icon; //设置statusbar显示的文字信息 // myNoti.tickerText= new_msg ; notification.flags = Notification.FLAG_AUTO_CANCEL; //设置notification发生时同时发出默认声音 notification.defaults = Notification.DEFAULT_SOUND; RemoteViews contentView = new RemoteViews(getPackageName(), R.layout.custom_notification); Bitmap bitmap=null; if(flag==0) { bitmap=drawableToBitmap(this.getResources().getDrawable(R.drawable.icon)); }else { //此处是关键地方,可以从网络或是sdcard上获取图片,转成bitmap就可以 bitmap=drawableToBitmap(this.getResources().getDrawable(R.drawable.alert_dialog_icon)); } contentView.setImageViewBitmap(R.id.notification_icon, bitmap); contentView.setTextViewText(R.id.app_name, "Custom notification"); notification.contentView = contentView; Intent intent = new Intent(this, MainActivity.class); PendingIntent contentIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT); notification.contentIntent = contentIntent; //显示Notification Random random = new Random(new Date().getTime()); mNotificationManager.notify(random.nextInt(1000000), notification); } //转化drawableToBitmap public static Bitmap drawableToBitmap(Drawable drawable) { Bitmap bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight(), drawable.getOpacity() != PixelFormat.OPAQUE ? Bitmap.Config.ARGB_8888 : Bitmap.Config.RGB_565); Canvas canvas = new Canvas(bitmap); drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight()); drawable.draw(canvas); return bitmap; }
源码下载:NotificationIcon.rar
标签:
android开发
, NotificationManager
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构