版权声明:本文为博主原创文章,未经博主允许不得转载。https://blog.csdn.net/u012691505/article/details/53004930

用到Notification遇到一些问题记录一下

1.Notification的点击事件(点击弹出对话框)

网上有很多做法,我的做法是:

(1)点击Notification跳转到一个Activity

(2)将Activity的主题设置为:类似android:theme="@style/Theme.AppCompat.Dialog"这样的Dialog样式,这样Activity就会以对话框的形式悬浮在另一个Activity之上。

(3)将Activity的背景设置为#80000000,使Activity背景类似透明

(4)在Activity里面设置Dialog弹出

(5)如果是自定义的对话框,设置代码可以参考下面的

final AlertDialog dialog = new AlertDialog.Builder(this).create();

dialog.show();

dialog.getWindow().setContentView(R.layout.notification_view);

TextView content= (TextView) dialog.findViewById(R.id.no_content);

content.setText(R.string.data_update);

dialog.getWindow().findViewById(R.id.no_download).setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

Toast.makeText(UpdateTestActivity.this,"正在开始新数据下载",Toast.LENGTH_LONG).show();

dialog.dismiss();

finish();

}

});

dialog.getWindow().findViewById(R.id.no_cancel).setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

dialog.dismiss();

finish();

}

});

2.点击一次消失

在网上看到一种方法:manager.cancel();我的结果是这个方法直接把notification干掉了,根本不显示。

推荐下面两种:

(1)设置一个flags就好notification.flags |= Notification.FLAG_AUTO_CANCEL;(一定要加这个"|",不然没效果)

(2)builder.setAutoCancel(true);

3.显示多个Notification时,点击任何一个跳转的都是同一个界面

这和PendingIntent.getActivity(context,intent,0);这个方法的第二个参数有关。Notification用在不同场景默认0是正确的,如果是同一场景下有多个,那就需要修改它的值。

4.android.view.WindowLeaked:异常

在执行AlterDialog的点击事件时,直接关掉Activity,没有先关闭dialog导致的窗体溢出异常

android notification自动消失,Notification点击事件和点击消失相关推荐

  1. html 点击增加样式,js点击添加css样式 css添加jq点击事件 JavaScript点击增加css样式...

    js可实现点击后对div或者其他标签增加或者删除css样式,从而达到实现点击触发某种效果的目的.页面样式可以通过style修饰,也可以通过css修饰,改变css或者添加css可以改变页面的排版.代码如 ...

  2. jq点击事件(jq点击事件)

    用的HTML5里video标签,用jq怎么点击全屏之后自动横屏播? 可以自己设置的 js如何获取class的元素不能用jq<br/1br/>2 2.var classElements = ...

  3. jquery 点击事件 第一次点击选中 第二次点击改变状态

    jquery点击事件 第一次选中:第二次消失 $("#myCard li").val(1);     $("#myCard li").click(functio ...

  4. jq实现点击一个按钮,触发另一个点击事件(点击按钮触发另一个按钮的点击事件)

    jq实现点击一个按钮,触发另一个点击事件 $("#a").click(function(){$("#b").trigger('click');}) 实现点击完i ...

  5. js手动触发页面元素点击事件,程序触发,自定义点击事件模拟点击

    页面有时候的使用场景需要手动控制某个元素响应点击事件,可以达到不直接点击元素来响应事件,这里可以使用element.dispatchEvent(),在使用element.dispatchEvent() ...

  6. js追加html 有点击事件,js点击事件的多种写法

    javascript 中的点击事件,可以通过多种不同的添加方式来实现.下面介绍三种 javascript 中添加点击事件的示例代码,个人可以根据自己的项目需要选择不同的实现方式. js添加点击事件的代 ...

  7. java js id的点击事件_JavaScript中点击事件的写法

    click var btn=document.getElementById('btn'); 第一种: btn.οnclick=function(){ alert('hello world'); } 消 ...

  8. TextView的部分点击事件和点击事件

    1.在TextView中实现部分点击 我在activity中使用了clickablespan这个类,然后完全按照视频上的操作下来,发现点击时不响应,于是我便设置了电话的链接,发现这时点击 自己设置的区 ...

  9. html动画点击事件,[CSS] 点击事件触发的动画

    redis键命令 1.ping命令用于检测redis是否启动 成功返回pong表示链接成功 2.在远程redis服务上执行命令 Redis-cli -h host -p port -a passwor ...

最新文章

  1. 数据库高性能读写分离集群操作说明
  2. tornado项目搭建_Day71-73 BBS项目(1)
  3. 带宽限制下的视觉实体属性传播
  4. Sum of Paths CodeForces - 1467D
  5. Hibernate之必须导入jar包
  6. 【牛客 - 331G】炫酷数字(反素数打表 或 扩展埃式筛法,结论)
  7. 视频下载比想象中容易
  8. java 微信证书文件,CertificateDownloader
  9. node配置ssl证书_在Linux服务器上部署node项目(git部署,forever持续运行,配置SSL证书)...
  10. 从零开始学前端:CSS引入 --- 今天你学习了吗?(CSS:Day07)
  11. php wiki搭建,wiki网站搭建
  12. 【毕业设计】JAVA医药管理系统设计(论文+源代码)
  13. 如何成功移植cleanflight、INAV到keil开发环境
  14. 编程随想 关系图_邹军:玩转数控编程,这里有个大招分享给你
  15. 【操作系统】CPU调度算法
  16. LeetCode上的各种股票最大收益
  17. 2020美容师(初级)模拟考试及美容师(初级)复审模拟考试
  18. 数据库 MySQL 中 DQL 数据库查询语言(特别重要)
  19. 生长算法实现点集的三角剖分(Python(Tkinter模块))
  20. IONIC中slides的使用(图片显示及其删除)

热门文章

  1. 物联网协议比较 MQTT CoAP RESTful/HTTP XMPP
  2. 导出为Excel例子 java
  3. 简单地使用webpack进行打包,一些常见打包错误
  4. Dubbo基本原理机制
  5. SpringBoot查看和修改依赖的版本
  6. shiro框架---关于多项目之间验证为什么需要共享session
  7. 鉴权必须了解的5个知识点:cookie,session,token,jwt,单点登录
  8. yii2 ajax访问控制器,如何在yii2中运行控制器动作作为ajax
  9. 背景图层和普通图层的区别_图层样式(一)—高级混合选项
  10. 继上一篇博客--javaweb通过接口来实现多个文件压缩和下载(包括单文件下载,多文件批量下载)