android 大视图风格通知栏,Android中使用Notification实现宽视图通知栏(Notification示例二)...
Notification是在你的應(yīng)用常規(guī)界面以外展現(xiàn)的消息。當(dāng)app讓系統(tǒng)發(fā)送一個消息的時候,消息首先以圖表的形式顯示在通知欄。要查看消息的詳情須要進入通知抽屜(notificationdrawer)中查看。通知欄和通知抽屜html
(notificationdrawer)都是系統(tǒng)層面控制的,你能夠隨時查看,不限制于app。java
Notification的設(shè)計:android
做為android UI中很重要的組成部分,notification擁有專屬于本身的設(shè)計準則。app
Notification的界面元素在通知抽屜中的notification有兩種顯示方式,取決于你的android版本以及notification drawer的狀態(tài):ide
(1)普通視圖ui
這種風(fēng)格是notification drawer的標準顯示方式。this
(2)寬視圖設(shè)計
指你的notification被展開的時候會顯示更大的視圖,這種風(fēng)格是android4.1以后才有的新特性。code
下面將詳細介紹寬視圖:
只有當(dāng)notification被展開的時候這種寬視圖的notification才會出現(xiàn),經(jīng)過手勢操做能夠展開一個普通的notification(部分定制系統(tǒng)不能夠,會直接顯示寬視圖)。這種風(fēng)格的notification從android4.1之后才開始支持。下面的截圖展現(xiàn)了inbox風(fēng)格的notification:
你應(yīng)該注意到了這種notification其實跟普通的沒多大差異,
惟一的區(qū)別在于數(shù)字7-詳情區(qū)域。
不一樣寬視圖notification這里的顯示是有區(qū)別的,有以下幾種風(fēng)格:
大圖標風(fēng)格:詳情區(qū)域顯示一個最高位256dp的bitmap。
文字風(fēng)格:詳情區(qū)域顯示一段文字
消息盒子風(fēng)格(Inbox style):詳情區(qū)域顯示幾行文字。
下面是咱們本次演示的效果圖:
下面開始代碼實現(xiàn),這里就不贅述點擊按鈕的布置了,直接上java的notification實現(xiàn)代碼:
1 public class MainActivity extendsAppCompatActivity {2 private static final int NO_2 =0x2;3 @Override4 protected voidonCreate(Bundle savedInstanceState) {5 super.onCreate(savedInstanceState);6 setContentView(R.layout.activity_main);7 }8 //按鈕的點擊方法
9 public voidshow(View v){10 NotificationCompat.Builder builder = new NotificationCompat.Builder(this);11 builder.setSmallIcon(R.mipmap.guojia);12 builder.setContentTitle("郭嘉");//系統(tǒng)限制,可能不顯示
13 builder.setContentText("咱們打袁紹吧");//系統(tǒng)限制,可能不顯示
14 builder.setDefaults(Notification.DEFAULT_ALL);15 //添加寬視圖
16 NotificationCompat.InboxStyle style = newNotificationCompat.InboxStyle();17 style.setBigContentTitle("十勝十?dāng)?#34;);18 //由手機屏幕像素決定顯示多少
19 style.addLine("第一是道勝");20 style.addLine("第二是義勝");21 style.addLine("第三是治勝");22 style.addLine("第四是度勝");23 style.addLine("第五是謀勝");24 style.addLine("第六是德勝");25 style.addLine("第七是仁勝");26 style.addLine("第八是明勝");27 style.addLine("第九是文勝");28 style.addLine("第十是武勝");29 style.setSummaryText("做者:郭嘉");//添加概要
30 builder.setStyle(style);31 Notification n =builder.build();32 NotificationManager manager =(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);33 manager.notify(NO_2, n);34 }35 }
今天就這樣,簡單演示了notification的寬視圖的實現(xiàn),你們睡前看看,晚安了
總結(jié)
以上是生活随笔為你收集整理的android 大视图风格通知栏,Android中使用Notification实现宽视图通知栏(Notification示例二)...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: win10下安装和卸载Ubuntu双系统
- 下一篇: python可以实现哪些功能_Pytho