网上商城开发设计,seo百度刷排名,西安网站建设制作价格低,福州网站建设http://blog.csdn.net/furongkang/article/details/6900338 Notification是一种让你的应用程序在不使用Activity的情况下警示用户,Notification是看不见的程序组件警示用户有需要注意的事件发生的最好途径。 作为UI部分,Notification对移动设备来说是最…
http://blog.csdn.net/furongkang/article/details/6900338
?Notification是一种让你的应用程序在不使用Activity的情况下警示用户,Notification是看不见的程序组件警示用户有需要注意的事件发生的最好途径。
作为UI部分,Notification对移动设备来说是最适合不过的了。用户可能随时都带着手机在身边。一般来说,用户会在后台打开几个程序,但不会注意它们。在这样的情形下,当发生需要注意的事件时,能够通知用户是很重要的。
Notification由NotificationManger统一管理,目前包含的能力有:
?创建一个状态条图标。
?
?在扩展的状态条窗口中显示额外的信息(和启动一个Intent)。
?
?闪灯或LED。
?
?电话震动。
?
?发出听得见的警告声(铃声,保存的声音文件)。
自定义Notification效果图:
???
?
自定义的布局文件:
[html]?view plaincopy- ??
-
??- ??xmlns:android="http://schemas.android.com/apk/res/android"??
- ??android:orientation="vertical"??
- ??android:layout_width="match_parent"??
- ??android:layout_height="match_parent">??
- ?
- ??android:id="@+id/tv_rv"??
- ??android:layout_width="wrap_content"??
- ??android:layout_height="wrap_content"??
- ??android:text="haha"??
- ?/>???
- ??style="@android:style/Widget.ProgressBar.Horizontal"??
- ??android:id="@+id/pb_rv"??
- ??android:layout_width="wrap_content"??
- ??android:layout_height="wrap_content"??
- ?/>???
创建Notification:
- public?class?CustomNotificationActivity?extends?Activity?{??
- ????NotificationManager?notificationManager;??
- ????@Override??
- ????public?void?onCreate(Bundle?savedInstanceState)?{??
- ????????super.onCreate(savedInstanceState);??
- ????????setContentView(R.layout.main);??
- ????????//获取到系统的notificationManager??
- ????????notificationManager?=??(NotificationManager)?getSystemService(Context.NOTIFICATION_SERVICE);??
- ????}??
- ??????
- ????public?void?click(View?view?){??
- ????????//实例化一个notification???
- ?????????String?tickerText?=?"IP号码?设置完毕";??
- ?????????long?when?=?System.currentTimeMillis();??
- ?????????Notification?notification?=?new?Notification(R.drawable.icon,?tickerText,?when);??
- ???????????
- ?????????//不能手动清理??
- ?????????//notification.flags=?Notification.FLAG_NO_CLEAR;??
- ?????????//添加音乐??
- ?????????//notification.sound?=?Uri.parse("/sdcard/haha.mp3");???
- ???????????
- ?????????//设置用户点击notification的动作???
- ?????????//?pendingIntent?延期的意图???
- ?????????Intent?intent?=?new?Intent(this,Bactivity.class);??
- ?????????PendingIntent?pendingIntent??=?PendingIntent.getActivity(this,?0,?intent,?0);??
- ?????????notification.contentIntent?=?pendingIntent;??
- ??????????
- ?????????//自定义界面???
- ?????????RemoteViews?rv?=?new?RemoteViews(getPackageName(),?R.layout.noti_layout);??
- ?????????rv.setTextViewText(R.id.tv_rv,?"我是自定义的?notification");??
- ?????????rv.setProgressBar(R.id.pb_rv,?80,?20,?false);??
- ?????????notification.contentView?=?rv;??
- ???????????
- ?????????//把定义的notification?传递给?notificationmanager???
- ?????????notificationManager.notify(0,?notification);??
- ????}??
- }??