Android_Notification
2016-06-14 12:59
459 查看
xml文件:
源代码:
<RelativeLayout xmlns: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="com.example.notificationdemo.MainActivity" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" android:gravity="center_horizontal" > <Button android:id="@+id/send_btn" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="send Message"/> <Button android:id="@+id/cancel_btn" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="cancel Message" /> </LinearLayout> </RelativeLayout>
源代码:
package com.example.notificationdemo; import android.app.Activity; import android.app.Notification; import android.app.Notification.Builder; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; /** * Notification是显示在手机状态栏的消息(手机状态栏位于手机最顶端),代表一种全局效果的通知 通知栏的内容:图标,标题,内容,时间,点击后响应 * 如何实现通知栏: 获取notificationManager 显示通知栏:notify(id,notification) 取消通知栏:cancel(id) * 构造Notification并设置显示内容 通知栏通知可以设置声音提示,指示灯以及震动效果,后两者注意需添加权限 * * * @author Administrator * */ public class MainActivity extends Activity implements OnClickListener { private Button send; private Button cancel; private NotificationManager manager; private int NOTIFICATION_ID; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); send = (Button) findViewById(R.id.send_btn); cancel = (Button) findViewById(R.id.cancel_btn); send.setOnClickListener(this); cancel.setOnClickListener(this); manager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);//系统常用服务 } @Override public void onClick(View v) { // TODO Auto-generated method stub switch (v.getId()) { case R.id.send_btn: sendNotification(); break; case R.id.cancel_btn: manager.cancel(NOTIFICATION_ID);//取消发送的通知 break; } } /** * 构造notification并发送到通知栏 */ private void sendNotification() { // TODO Auto-generated method stub Intent intent = new Intent(this, MainActivity.class); PendingIntent pintent = PendingIntent.getActivity(this, 0, intent, 0); Builder builder = new Notification.Builder(this); builder.setSmallIcon(R.drawable.ic_launcher);// 设置图标 builder.setTicker("hello");// 设置手机状态栏的提示 // 拖拽开手机状态栏提示的内容 builder.setWhen(System.currentTimeMillis());// 设置时间 builder.setContentTitle("通知");// 设置标题 builder.setContentText("内容");// 设置内容 builder.setContentIntent(pintent);// 设置点击之后的响应,意图 /* * builder.setDefaults(Notification.DEFAULT_SOUND);//设置声音 * builder.setDefaults(Notification.DEFAULT_LIGHTS);//设置指示灯 * builder.setDefaults(Notification.DEFAULT_VIBRATE);//设置震动 */ builder.setDefaults(Notification.DEFAULT_ALL); Notification notification = builder.getNotification();// 4.1以下 // builder.build();//4.1及以上 manager.notify(NOTIFICATION_ID, notification);//发送通知到通知栏 } }
相关文章推荐
- Android之Activity(三):活动的生命周期
- Android之AlarmManager(全局定时器/闹钟)指定时长或以周期形式执行某项操作
- Android引导界面的实现分析
- 基于Android6.0的RIL底层模块分析
- Android Studio 快捷键整理分享
- Android之Activity(八):活动意外被回收,如何处理临时数据的保存问题?
- 时间间隔: SystemClock.uptimeMillis与System.currentTimeMillis
- android activity向fragment通信,获取fragment的三种方法
- Android学习笔记之AndroidManifest.xml文件解析
- Android调试之查看日志文件技巧
- 常用正则表达式
- 保持Android设备屏幕常亮和cpu活动状态
- Android中的Drawable资源—— LayerDrawable
- 推荐一个Android开发,懒人框架ButterKnife。
- Android获取应用cpu使用率
- Android自定义可动画展开收缩View的实现
- Android 使用 YouWave 模拟器 进行程序调试
- android命令查看cpu与内存使用率
- 使用Espresso Test Recorder编写Android测试
- Android中Context详解 ---- 你所不知道的Context