Android之Notification案例展示:
~~~
public class MainActivity extends Activity implements OnClickListener{
NotificationManager manager; //通知栏控制类
int notification_ID; //通知ID
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
manager=(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); //获取系统通知服务
findViewById(R.id.btnSend).setOnClickListener(this);
findViewById(R.id.btnCancle).setOnClickListener(this);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.btnSend:
sendNotification();
break;
case R.id.btnCancle:
cancleNotification();
break;
}
}
private void sendNotification() {
Builder builder=new Notification.Builder(this);
builder.setTicker("Hello"); // 设置手机状态栏的提示
builder.setSmallIcon(R.drawable.ic_launcher); // 设置手机状态栏的图标
builder.setWhen(System.currentTimeMillis()); // 设置时间
builder.setContentTitle("通知栏通知"); // 设置标题
builder.setContentText("通知栏提示的内容"); // 设置通知内容
Intent intent=new Intent(this,MainActivity.class); //设置点击后跳转到MainActivity
PendingIntent pendingIntent=PendingIntent.getActivity(this, 0, intent, 0);
builder.setContentIntent(pendingIntent); //设置点击后的意图
builder.setDefaults(Notification.DEFAULT_ALL); //直接设置成默认,就全部包含了以下设置
/* 添加权限
* <uses-permission android:name="android.permission.VIBRATE"/>
* <uses-permission android:name="android.permission.FLASHLIGHT"/>
* */
//builder.setDefaults(Notification.DEFAULT_SOUND); //设置提示音
//builder.setDefaults(Notification.DEFAULT_LIGHTS); //设置指示灯
//builder.setDefaults(Notification.DEFAULT_VIBRATE); //设置震动
Notification notification=builder.build(); //获取Notification // 4.1以上
//Notification notification2=builder.getNotification(); // 4.1以下
manager.notify(notification_ID, notification); //通过通知栏控制类显示通知
}
private void cancleNotification() {
// TODO Auto-generated method stub
manager.cancel(notification_ID); //取消通知
}
}
~~~
效果图:
![](https://box.kancloud.cn/2016-04-06_5704cced08f15.jpg)
![](https://box.kancloud.cn/2016-04-06_5704cced1d85c.jpg)
![](https://box.kancloud.cn/2016-04-06_5704cced33bca.jpg)
![](https://box.kancloud.cn/2016-04-06_5704cced46dca.jpg)
- 前言
- Java内部类
- 从一个View向一个Activity跳转
- Android 与 SQLite
- Android工程A依赖B,B依赖C
- Android重要控件概览(上)
- Installation error: INSTALL_PARSE_FAILED_MANIFEST_MALFORMED
- Android布局概览
- 动态引用APK文件
- Android重要控件概览(中)
- Android重要控件概览(下)
- Gallery和ImageSwitcher
- Android之Toast
- Android之Dialog
- Android之Notification
- Android之Menu
- Android Menu中android:showAsAction属性
- Android SharedPreferences存储数据的使用方法
- Android手势识别之GestureDetector
- 不同APP通过SharedPreferences传递数据(共享数据)
- 一个自定义的Topbar模板
- 关于Activity回收造成View选中不对应的问题
- Android之Fragment静态加载