时间:2021-05-20
Android状态栏提醒
在Android中提醒功能也可以用AlertDialog,但是我们要慎重的使用,因为当使用AlertDialog的时候,用户正在进行的操作将会被打断,因为当前焦点被AlertDialog得到。我们可以想像一下,当用户打游戏正爽的时候,这时候来了一条短信。如果这时候短信用AlertDialog提醒,用户必须先去处理这条提醒,从而才能继续游戏。用户可能会活活被气死。而使用Notification就不会带来这些麻烦事,用户完全可以打完游戏再去看这条短信。所以在开发中应根据实际需求,选择合适的控件。
步骤:
一、添加布局对象
复制代码 代码如下:
<Button
android:id="@+id/showButton"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="showNotification" />
<Button
android:id="@+id/cancelButton"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="cancelNotification" />
二、修改MianActivity继承处Activity并实现接口OnClickListener
复制代码 代码如下:
public class MainActivity extends Activity implements OnClickListener {
private Context mContext = this;
private Button showbtn, calclebtn;
private Notification noti;
private NotificationManager notiManger;
private static int NOTIFICATION_ID = 0x0001;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
setUpViews();
}
private void setUpViews() {
showbtn = (Button) findViewById(R.id.showButton);
calclebtn = (Button) findViewById(R.id.cancelButton);
noti = new Notification(R.drawable.ic_launcher, "this is a notification", System.currentTimeMillis());
noti.defaults = Notification.DEFAULT_SOUND;// 使用默认的提示声音
noti.defaults |= Notification.DEFAULT_VIBRATE;// 添加震动
notiManger = (NotificationManager) this.getSystemService(mContext.NOTIFICATION_SERVICE);//获取NofificationManger对象
showbtn.setOnClickListener(this);//让Activity实现接口OnClickListener可以简单的通过此两行代码添加按钮点击响应事件
calclebtn.setOnClickListener(this);
}
// 按钮点击事件响应
@Override
public void onClick(View v) {
if (v == showbtn) {
Intent intent = new Intent(this.getApplicationContext(),this.getClass());
// 设置Intent.FLAG_ACTIVITY_NEW_TASK
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
PendingIntent contentIntent = PendingIntent.getActivity(this, 0, intent, 0);
// noti.setLatestEventInfo(context, contentTitle, contentText, contentIntent)设置(上下文,标题,内容,PendingInteng)
noti.setLatestEventInfo(this, "10086", "你从此以后免除所有话费", contentIntent);
// 发送通知(消息ID,通知对象)
notiManger.notify(NOTIFICATION_ID, noti);
} else if (v == calclebtn) {
// 取消通知(id)
notiManger.cancel(NOTIFICATION_ID);
}
}
}
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
AndroidNotification使用详解Notification核心代码(链式调用):适用于Android4.0以上(不兼容低版本)Notificatio
本文实例讲述了Android中Notification用法。分享给大家供大家参考,具体如下:Notification可以理解为通知的意思一般用来显示广播信息用N
Android自定义阴影效果详解及实例Android5.X中,Google为其增加了两个属性android:elevation=””与android:trans
关于详解Android应用中DialogFragment的基本用法,大家可以参考下。1、概述DialogFragment在android3.0时被引入。是一种特
本文实例讲述了Android实现为Notification加上一个进度条的方法。分享给大家供大家参考,具体如下:packagecom.notification;