位置: 编程技术 - 正文

安卓小项目实战之--定时提醒备忘录(安卓小项目实战软件)

编辑:rootadmin
写在前面: 安卓的学习也有半年多了,期间也曾写过博客,但大多都是一些琐碎的笔记,基本没用任何参考价值,这几天闲来无事,便想做个小项目来玩玩,巩固一下基本知识,并且完整的记录下来整个开发的过程,以作留念。

推荐整理分享安卓小项目实战之--定时提醒备忘录(安卓小项目实战软件),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:安卓项目实战博学谷第二版源码,安卓项目实战手机安全卫士,安卓项目实战手机安全卫士,安卓项目实战手机安全卫士,安卓项目实战培训费用,安卓项目实战培训费用,安卓小项目实战教程,安卓小项目实战教程,内容如对您有帮助,希望把文章链接给更多的朋友!

/————————我是华丽的分割线—————————-/ 本次项目选择了可定时提示的备忘录。原理是利用系统每分钟发送一条时间改变的广播,通过接受这条广播来判断是否为用户设置的时间,如果是则与用户交互提醒用户。 首先,在Eclipse中创建一个Android项目,取名为Notification

类:MainActivity.java

此Activity主要用于用户添加备忘录页面的转跳与已添加备忘录的展示。 在其布局文件activity_main.xml中加入一个Button和一个TextView 。目前还没有实现多事件的共同设置,所以暂时使用TextView显示事件。 因为储存的数据比较少,这里采用SharedPreferences进行存储,在Activity的onCreate()方法中进行成员变量的初始化操作:

在onStart()中对按钮bt添加点击事件监听,并通过startActivity(intent)启动AddActivity转跳到添加的Activity:

在onResume()方法中,获取SharedPerfences中的数据并更新TextView的内容:

MainActivity.java整体代码如下:

该Activity布局文件activity_main.xml如下类:AddActivity.java

该Activity为用户添加备忘录事件的Activity,用户通过EditText和DatePicker和TimePicker进行数据的输入,单击按钮由SharedPerfences记录用户输入的数据.在onCreate()中进行初始化,在onStart()中对按钮添加监听,并且将时间选择器和用户输入的内容存入SharedPerfences,这里应当注意的是,时间选择器选择的数据如果为一位数如1月 则记录的日期为1 并非,这点与SimpleDateFormat生成的不一致,所以我们需要自己建立一个类来规范我们的时间,这个类取名为MyTime,在存储完毕用户键入的数据以后,Activity会启动一个服务NotifyService,并且调用finish()关闭自身。

AddActivity代码如下:MyTime.java如下服务NotifyService.java

新建服务需要在AndroidManifest.xml进行注册,在节点下加入以下代码进行注册

安卓小项目实战之--定时提醒备忘录(安卓小项目实战软件)

该服务主要功能为判断当前时间与用户储存时间是否一致,并进行相应动作,在onCreate()方法动态注册一个广播接收器TimeRecevier,该广播接收器接收系统时间变化的广播,该广播每分钟由系统发出一次,并在OnDestroy()方法中注销该广播接收器。具体ACTION如下(要接收该广播,必须进行动态注册):

在onStartCommand()方法中,利用SimpleDateFormat将当前系统时间格式化与本地存储一致的格式,当前时间可以通过new Date()获取(new Date()实质上就是System.currentTimeMillis());然后进行时间的比对,如果一致,则通知栏通知用户,并且启动一个可以在锁屏状态下唤醒屏幕的Activity。这里值得注意的是,在服务中启动一个Activity必须为调用的intent添加一个Flag如下:

最后调用stopSelf()方法,关闭自身.

NotifyService.java代码如下:类,广播接收器:TimeReceiver.java

整个接收器的作用只有一个,就是每次接收到广播,便启动服务NotifyService。

TimeReceiver.java如下类DialogActivity.java

该Activity为用户预设的时间到了通知用户的Activity,该Activity有如下特性: 1.可以点亮屏幕。 2.可以在锁屏状态下启动。 实现这两个特点并不困难,只需要加入这两句话:

另外,值得一提的是,QQ客户端的锁屏聊天窗口就是这样实现的(如图): 这个窗口看似是在弹窗之上。其实本身只是一个Activity,玄机就在他的背景图片,他是一个以系统壁纸为背景的没有标题栏的Activity。因此为了不让Activity突然弹出看起来那么突兀,我们要自定义一个Theme。在AndroidManifest.xml的节点下加入以下代码

在res/values/styles.xml加入自定义的Style

完成感谢你的阅读,在此我们就完成了定时提醒备忘录这个小项目,当然这个项目还有很多不足,只是一个功能的实现,如果有兴趣你可以根据源代码添加想要的功能例如多条事件的添加,还可以加上桌面组件.源码下载地址:

popupWindow 的使用方法 1如何实现点击popup外边来实现,popupWindow自动退出a设置外部可点击popupWindow=newPopupWindow(menuView,LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);popupWindow.setOutsideTo

安卓监听sd卡插入和卸载 第一步在AndroidManifest.xml增加如下代码receiverandroid:name=com.xxx.receiver.UsbCardLinsenerReceiverintent-filterandroid:priority=actionandroid:name=android.intent.action.MEDIA_MOUNTED/a

HttpClient.execute() 阻塞问题 在实现安卓与PHP后台交互过程中,当安卓利用HttpPost去后台获取数据时,代码执行到下面这句就阻塞了:spanstyle=font-size:px;httpClient.execute(httpPost);/span一

标签: 安卓小项目实战软件

本文链接地址:https://www.jiuchutong.com/biancheng/385215.html 转载请保留说明!

上一篇:Google I/O 大会将近(google年会)

下一篇:popupWindow 的使用方法(android popupwindow使用)

  • 小规模纳税人开专票税率是1%还是3%
  • 分公司非独立核算
  • 失业稳岗补贴怎么记账
  • 更改增值税申报表有退税会很麻烦吗
  • 企业销售不动产增值税政策
  • 小规模机械租赁公司
  • 房产税计税依据
  • 收到公司退货会计分录
  • 创业就业带动补贴
  • 销售中有运费收入吗
  • 自然人股权转让要交什么税
  • 社保可以在税前扣除吗
  • 调整以前年度应交税费分录
  • 资产负债表和利润表在哪里查
  • 老总来公司视察
  • 集体福利是否可以抵税
  • 没有及时去做财务会计制度备案怎么办?
  • 保险公司买保险和银行买保险有什么区别
  • 远期外汇合约套期会计分录
  • 本企业领用外购原材料进项税要转出吗
  • 餐饮业管理费用明细表
  • 戴尔r710服务器系统安装详解
  • 雨林木风 u盘
  • PHP:oci_num_fields()的用法_Oracle函数
  • linux 管道命令详解
  • macOS Big Sur 11.2 RC 3(版本号20D64)预览版正式发布(附更新内容)
  • 固定资产处置的三种情况
  • 税款滞纳金会计科目
  • php和py
  • 桔梗的功效与作用吃法
  • 房屋赠与双方办理流程
  • php递归遍历文件夹
  • 退休后工作单位填什么内容
  • 海浪冲击着海岸
  • 主营业务毛利率公式
  • php_imagick
  • 房地产公司活动方案
  • 废钢收购无进项怎么处理
  • 确认收入需要哪些资料
  • 网上购物没有发票怎么保修
  • 商会年会活动策划方案模板
  • python有什么用
  • dede织梦怎么转成zblog
  • 外出经营税收缴纳
  • 会计的借记和贷记什么意思
  • 超市小规模税负怎么算
  • 生产成本明细科目有哪些内容
  • 建筑业普票与专票怎么抵扣
  • 子公司注销如何注销
  • 应收及预付款项的坏账损失应当于实际发生时计入
  • 物业公司收的水费怎么做账
  • 体检收据可以入档案吗
  • 未开票收入怎么填写增值税申报表
  • 赠送客户的商品怎么入账
  • mysql加密解密
  • mysql5.7.26启动失败
  • 预览版与正式版
  • win7删除搜索历史记录
  • linux ftpd
  • w10消费者版本和专业版区别
  • linux怎么把网卡down
  • 解决安装后软件icon一圈白边问题
  • win10 提示
  • Android---61---TabHost简单使用
  • django模块详解
  • javaScript事件机制兼容【详细整理】
  • 菜鸟app兼职
  • ug输入代码
  • javascript什么用
  • jq easyui
  • Python字符串切片例子
  • jquery详解
  • js怎么拿到表单提交数据
  • jquery第十章上机
  • 贵州省电子税务局操作手册
  • 小规模纳税人可以开13%的发票吗
  • 公司注册后多久要去税务局登记
  • 临沂学生医疗保险多少钱
  • 会议服务的服务定位是什么
  • 申报农业项目的程序是什么?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设