闹铃设置
来源:互联网 发布:淘宝网店转让价格 编辑:程序博客网 时间:2024/04/30 09:44
1、首先创建一个广播提示时间到了
package com.example.alarm;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.widget.Toast;public class AlarmReceiver extends BroadcastReceiver {@Overridepublic void onReceive(Context context, Intent arg1) {// TODO Auto-generated method stubToast.makeText(context, "你设置的闹钟时间到了", Toast.LENGTH_LONG).show();}}
2、注册广播
<receiver android:name=".AlarmReceiver" android:process=":remote" />3、写布局文件
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:orientation="vertical" tools:context=".MainActivity" > <TextView android:id="@+id/text" android:layout_width="wrap_content" android:layout_height="wrap_content"/> <Button android:id="@+id/button1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="设置闹铃"/> <Button android:id="@+id/button2" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="取消闹铃"/></LinearLayout>4、写主代码
package com.example.alarm;import java.util.Calendar;import android.os.Bundle;import android.os.Vibrator;import android.app.Activity;import android.app.AlarmManager;import android.app.PendingIntent;import android.app.Service;import android.app.TimePickerDialog;import android.content.Intent;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.TextView;import android.widget.TimePicker;public class MainActivity extends Activity {private Button determine;private Button cancel;private TextView text;Calendar calendar;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);initUI();}//初始化uiprivate void initUI() {// TODO Auto-generated method stub calendar = Calendar.getInstance(); text = (TextView)findViewById(R.id.text); determine = (Button)findViewById(R.id.button1); determine.setOnClickListener(new determineListener()); cancel = (Button)findViewById(R.id.button2); cancel.setOnClickListener(new cancelListener()); }//设置闹铃public class determineListener implements OnClickListener{@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stubcalendar.setTimeInMillis(System.currentTimeMillis());int hour = calendar.get(Calendar.HOUR_OF_DAY);int minute = calendar.get(Calendar.MINUTE);new TimePickerDialog(MainActivity.this,new TimePickerDialog.OnTimeSetListener() {@Overridepublic void onTimeSet(TimePicker view, int hourofDay, int minute) {// TODO Auto-generated method stub//设置日历的时间和当前时间同步calendar.setTimeInMillis(System.currentTimeMillis());//设置小时和分钟 calendar.set(Calendar.HOUR_OF_DAY, hourofDay); calendar.set(Calendar.MINUTE, minute); //将秒合毫秒设置为0 calendar.set(Calendar.SECOND, 0); calendar.set(Calendar.MILLISECOND, 0); //建立Intent和PendingIntent来调用闹钟管理器 Intent intent = new Intent(MainActivity.this, AlarmReceiver.class); PendingIntent pendingIntent = PendingIntent.getBroadcast(MainActivity.this, 0, intent, 0); //获取闹钟管理器 AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE); //设置闹钟 alarmManager.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), pendingIntent); alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + (10 * 1000), (24 * 60 * 60 * 1000), pendingIntent); String tmps = "设置闹钟时间为" + format(hourofDay) + ":" +format(minute); text.setText(tmps); }}, hour, minute, true).show();}}/** * * @param time * @return */ private String format(int time){ String str = "" + time; if(str.length() == 1){ str = "0" + str; } return str; } //取消闹铃public class cancelListener implements OnClickListener{@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stub//建立Intent和PendingIntent来调用闹钟管理器Intent intent = new Intent(MainActivity.this, AlarmReceiver.class); PendingIntent pendingIntent = PendingIntent.getBroadcast(MainActivity.this, 0, intent, 0); //获取闹钟管理器 AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE); //取消闹钟设置 alarmManager.cancel(pendingIntent); text.setText("闹铃已取消!"); }}}
0 0
- 闹铃设置
- Android中闹铃的设置
- android 打开闹铃的设置
- 闹铃
- 闹铃
- android 设置单个闹铃并取消单个闹铃,并支持多个闹铃(一)
- Android设置闹铃步骤(关机重启闹铃失败问题)
- AlertManager设置第一次闹铃响起后,间隔多长时间再响
- Android Notification 详解--设置闹铃、振动、灯光
- 监测闹铃
- 闹铃软件
- 闹铃问题
- 如何设置UI界面元素的大小 为何有的时钟闹铃不是准时的
- android 在一基础上增加闹铃存储和开机重新设置(二)
- 把sd卡中的mp3设置为闹铃或来电提示音
- Android Notification 详解(二)--设置闹铃时铃声从SD卡中获取
- 简易闹铃java源码
- 多媒体(闹铃)
- Deep learning:三十三(ICA模型)
- 再谈Mysql中limit后的注入
- Deep learning:三十四(用NN实现数据的降维)
- 一种用verilog生成任意位二进制转BCD码的方法
- hdoj5186
- 闹铃设置
- Deep learning:三十五(用NN实现数据降维练习)
- 如何选择分类器
- c++上机作业1
- 梯度下降法(Gradient descent)
- hadoop伪分布式搭建
- 网络地址划分标准
- Deep learning:三十六(关于构建深度卷积SAE网络的一点困惑)
- HDU1556 树状数组