位置: 编程技术 - 正文

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

编辑: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使用)

  • 企业之间拆借资金是什么意思
  • 普通发票可以抵税点吗
  • 公司购入烟酒会计处理
  • 所得税费用增加利润减少
  • 个体户逾期申报罚款多少
  • 税控盘服务费去年忘记抵了今年可以抵扣吗
  • 房屋出租收入其税收如何计算呢?
  • 提取法定盈余公积会计分录
  • 公司厨房用品专用发票怎么处理?
  • 股权转让溢价会计处理
  • 固定资产如何抵扣企业所得税
  • 金蝶软件开发服务费入什么科目?
  • 估价入账是什么意思
  • 企业自查补税报告怎么写?
  • 建筑业开具发票新规定
  • 个税前几个月没有工资,累计减除费用会累计吗
  • 房产税原值包括印花税吗
  • 专项维修基金所得税可税前扣除吗?
  • 自己盖厂房
  • 固定资产抵扣的税率
  • 公司房租押金收不回来账务处理
  • 党员经费的使用范围
  • 劳务报酬所得包括哪些?与工资薪金所得的区别?
  • 中秋佳节发放职工福利的话语
  • 简述linux系统的启动
  • lsalss.exe
  • 在windows 7中
  • erl.exe是什么进程
  • wordpress邮箱怎么配置
  • 委托加工应税消费品的纳税义务人是受托方
  • vue使用技巧
  • 4月满月是几号
  • 阿根廷圣克鲁斯省
  • symfony是最好的框架
  • symfony框架的特点
  • 专项基金设立
  • php获取ipv6地址
  • 微信公众号模板软件
  • pytorch训练模型计算f1
  • pgrep命令详解
  • vue数据加载完成显示页面过渡动画
  • 租入厂房需做环保检测吗
  • 未认证发票如何导出
  • React props全面详细解析
  • 委托收款的含义
  • 捐赠货物的增值税可以税前扣除吗
  • 劳务派遣公司开票内容写什么
  • 现金流量表季度期初现金余额怎么填
  • 子公司注销母公司收回现金流
  • 离线开票时间超限怎么办 发票都已经报送
  • 什么是暂估入库核算
  • 调整其他应付款作为收入
  • mysql通过文档读取并执行命令之快速为mysql添加多用户和数据库技巧
  • mysql爆破字典
  • 神舟平板寸劲开天
  • linux如何开启ftp
  • win版本微信
  • win7旗舰版系统重装
  • win8.1系统安装教程
  • Linux基础与应用开发指南pdf百度云
  • win7定时开关怎么定时
  • unity 虚拟摇杆
  • react 同级组件之间传值
  • EXTJS FORM HIDDEN TEXTFIELD 赋值 使用value不好用的问题
  • opengl 实现
  • node. js教程
  • jquery日期控件onchange事件
  • java4Android(15)处理流的使用示例、装饰者设计模式、节点流和处理流的关系
  • css onclick
  • unity局域网多人游戏
  • android:excludeFromRecents="true"
  • unity 更新
  • js函数调用常用字符串
  • [置顶]游戏名:chivalry2
  • python写出来的程序怎么用
  • 孙其功陪你学之——unity3d进程暂停
  • javascript获取浏览器代理设置
  • python设计二叉树结构
  • 消费税抵扣范围包括哪些
  • 广州买房退税政策2020
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设