要使用消息通知,必须要用到两个类:NotificationManager和Notification,其中NotificationManager的 初始化是用getSystemService方法,并且通过notify方法来向android系统发送消息栏通知和显示。

下面是项目的结构图:

下面是布局代码:

(1)main.xml

<RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"tools:context=".MainActivity"><TextViewandroid:id="@+id/textView1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="@string/hello_world"/><Buttonandroid:id="@+id/button1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_below="@+id/textView1"android:layout_centerHorizontal="true"android:layout_marginTop="44dp"android:text="显示通知"/></RelativeLayout>

(2)other.xml

<RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"tools:context=".MainActivity"><TextViewandroid:id="@+id/textView1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="你好,这里显示通知的内容"/></RelativeLayout>

下面是java代码:

(1)MainActivity

packagecom.lihua.notify.activity;importandroid.app.Activity;importandroid.app.Notification;importandroid.app.NotificationManager;importandroid.app.PendingIntent;importandroid.content.Context;importandroid.content.Intent;importandroid.os.Bundle;importandroid.view.View;importandroid.view.View.OnClickListener;importandroid.widget.Button;publicclassMainActivityextendsActivity{privateButtonmShowNofity;@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);mShowNofity=(Button)findViewById(R.id.button1);mShowNofity.setOnClickListener(newOnClickListener(){@OverridepublicvoidonClick(Viewv){myNotify();}});}publicvoidmyNotify(){//消息通知栏//定义NotificationManagerStringns=Context.NOTIFICATION_SERVICE;NotificationManagermNotificationManager=(NotificationManager)getSystemService(ns);//定义通知栏展现的内容信息inticon=R.drawable.ic_launcher;CharSequencetickerText="通知栏标题";longwhen=System.currentTimeMillis();Notificationnotification=newNotification(icon,tickerText,when);//定义下拉通知栏时要展现的内容信息Contextcontext=getApplicationContext();CharSequencecontentTitle="通知栏标展开标题";CharSequencecontentText="通知栏展开详细内容";IntentnotificationIntent=newIntent(this,BootStartActivity.class);PendingIntentcontentIntent=PendingIntent.getActivity(this,0,notificationIntent,0);notification.setLatestEventInfo(context,contentTitle,contentText,contentIntent);//用mNotificationManager的notify方法通知用户生成标题栏消息通知mNotificationManager.notify(1,notification);}}

(2)BootStartActivity

packagecom.lihua.notify.activity;importandroid.app.Activity;importandroid.os.Bundle;publicclassBootStartActivityextendsActivity{@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.other);}}

下面是AndroidManifest.xml代码:

<?xmlversion="1.0"encoding="utf-8"?><manifestxmlns:android="http://schemas.android.com/apk/res/android"package="com.lihua.notify.activity"android:versionCode="1"android:versionName="1.0"><uses-sdkandroid:minSdkVersion="8"android:targetSdkVersion="17"/><applicationandroid:allowBackup="true"android:icon="@drawable/ic_launcher"android:label="@string/app_name"android:theme="@style/AppTheme"><activityandroid:name="com.lihua.notify.activity.MainActivity"android:label="@string/app_name"><intent-filter><actionandroid:name="android.intent.action.MAIN"/><categoryandroid:name="android.intent.category.LAUNCHER"/></intent-filter></activity><activityandroid:name=".BootStartActivity"></activity></application></manifest>

下面是效果图:

点击“显示通知”按钮后,通知栏显示通知:

通知栏下拉的内容:

点击通知栏后跳转到BootStartActivity页面:

源码:http://pan.baidu.com/s/1eQxNt54


更多相关文章

  1. Android(安卓)PreferenceActivity源码分析与使用总结
  2. android Button 的按下和抬起事件监听
  3. DrawerLayout使用详解
  4. Android(安卓)通知流程
  5. android 显示16色的图片:输入用颜色矩阵,显示对应的16色位图
  6. CardView卡片效果
  7. Android中Adapter嵌套Adapter、ListView嵌套GridView时的内层Ada
  8. android 自定义RatingBar图案
  9. android UI效果三: 滚动切换屏幕

随机推荐

  1. Android屏幕点亮(常亮)及屏幕解锁和锁定
  2. Android(安卓)关于wifi管理的代码
  3. Android(安卓)proguard(混淆)模板
  4. Android快速开发之封装标题栏
  5. android 实现自定义隐藏式菜单
  6. android 开发环境搭建
  7. 构建更好的应用--Xamarin平台
  8. android recovery升级原理及update.zip升
  9. Android上传文件到Django服务器
  10. 疯狂android讲义---事件处理2