您的位置:首页 > 移动开发 > Android开发

android基础学习之通知

2016-04-06 18:02 387 查看
一般来说android的通知有3中方式,第一种是通过toast直接打印在屏幕上,第二种是对话框的形式,第三种是以通知的形式,在通知的形式中以下提供的方法仅仅适用于api16或者更高的版本,代码中有详细注解

package com.example.notificationdemo;

import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.Toast;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}

public void onMyClick(View v) {
int id = v.getId();
switch (id) {
case R.id.btn_toast:
Toast.makeText(this, "我是toast", Toast.LENGTH_SHORT).show();
break;
case R.id.btn_dialog:
//创建builder对象
AlertDialog.Builder builder = new AlertDialog.Builder(this);

builder.setTitle("标题").setMessage("我是Alertdialog")
.setPositiveButton("我知道", new OnClickListener() {

@Override
public void onClick(DialogInterface arg0, int arg1) {
// 设置确定按钮的相应的点击事件
}
});
//通过builder对象创建dialog
AlertDialog dialog=builder.create();
//显示dialog
dialog.show();
break;
case R.id.btn_notification:
//创建builder对象
Notification.Builder notibuilder = new Notification.Builder(this);
notibuilder.setTicker("Tiker").setContentTitle("你傻吗")
.setContentText("你才傻");
//创建intent对象
Intent intent = new Intent(this, MainActivity.class);
//通过intent对象创建PendingIntent对象
PendingIntent pintent = PendingIntent.getActivity(this, 0,
intent, PendingIntent.FLAG_UPDATE_CURRENT);
//将PendingIntent对象给builder
notibuilder.setContentIntent(pintent);
//创建notification对象
Notification notification=notibuilder.build();
//获取系统的状态栏通知服务
NotificationManager nm=(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
//显示我们的notification
nm.notify(1000,notification);
break;

}

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: