Android自定义闹钟
来源:互联网 发布:java数据脱敏技术 编辑:程序博客网 时间:2024/05/17 04:57
Android闹钟alarmManager+PendingIntent
这次给大家分享两种闹钟:
第一种是当到达闹钟时间后执行一次相应的操作
alarmManager.set(AlarmManager.RTC_WAKEUP,c.getTimeInMillis(),pendingIntent);
第二种是当到达闹钟时间后每隔一段时间执行操作
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,c.getTimeInMillis(),5000, pendingIntent);
下面看效果图:
设置两种闹钟
选择闹钟时间
闹钟一到打开一个界面
下面看代码:
public class Alarm2Activity extends AppCompatActivity { private AlarmManager alarmManager; private PendingIntent pendingIntent; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_alarm2); //实例化闹钟个管理器 alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE); } //设置闹钟(只响一次) public void startAlarmOne(View view){ //获取当前系统的时间 Calendar calendar=Calendar.getInstance(); int hour=calendar.get(Calendar.HOUR_OF_DAY); int minute=calendar.get(Calendar.MINUTE); //弹出时间对话框(选择时间) TimePickerDialog timePickerDialog=new TimePickerDialog(this, new TimePickerDialog.OnTimeSetListener() { @Override public void onTimeSet(TimePicker timePicker, int i, int i1) { //获取当前系统的时间 Calendar c=Calendar.getInstance(); c.set(Calendar.HOUR_OF_DAY,i); c.set(Calendar.MINUTE,i1); //打开一个Activity Intent intent=new Intent(); intent.setAction("com.example.myandroid_27.ALARM"); PendingIntent pendingIntent= PendingIntent.getBroadcast(Alarm2Activity.this,0x101,intent,0); //设置闹钟 alarmManager.set(AlarmManager.RTC_WAKEUP,c.getTimeInMillis(),pendingIntent); } },hour,minute,true); timePickerDialog.show(); } //设置闹钟(在多长时间后闹钟响然后继续计时) public void startAlarmTwo(View view){ //获取当前系统的时间 Calendar calendar=Calendar.getInstance(); int h=calendar.get(Calendar.HOUR_OF_DAY); int m=calendar.get(Calendar.MINUTE); //弹出时间对话框(选择时间) TimePickerDialog timePickerDialog=new TimePickerDialog(this, new TimePickerDialog.OnTimeSetListener() { @Override public void onTimeSet(TimePicker timePicker, int i, int i1) { //获取选择的闹钟时间 Calendar c=Calendar.getInstance(); c.set(Calendar.HOUR_OF_DAY,i); c.set(Calendar.MINUTE,i1); //打开一个Activity Intent intent=new Intent(); intent.setAction("com.example.myandroid_27.ALARM"); pendingIntent = PendingIntent.getBroadcast(Alarm2Activity.this,0x102,intent,0); //闹钟什么时候继续执行 alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,c.getTimeInMillis(),5000, pendingIntent); } },h,m,true); timePickerDialog.show(); } //关闭周期闹钟 public void startAlarmThree(View view){ alarmManager.cancel(pendingIntent); }}
0 0
- Android的自定义闹钟
- Android自定义闹钟
- Android 实现自定义闹钟
- Android 实现自定义闹钟
- Android 实现自定义闹钟
- Android自定义View绘制闹钟
- Android自定义View 闹钟唤起播放闹钟铃声实现
- Android 自定义view 高仿小米闹钟
- android闹钟
- ANDROID 闹钟
- Android 闹钟
- android 闹钟
- Android闹钟
- Android 闹钟
- android闹钟
- android--闹钟
- Android--闹钟
- android 闹钟
- POJ-3087 Shuffle'm Up
- 十八、Hive 中UDF编程
- 21天学通C++之C++程序的组成部分
- 文章标题
- hdu 2222 ac自动机模板题
- Android自定义闹钟
- 循环,运算符,语句块,typedef工具,字符输入get(),文件尾条件,二维数组,时间clock()
- ZOJ 3631 Watashi's BG DFS
- iOS Application Loader上传报错
- 【java】使用mysql+java绘制Excel二维表格
- 获取cpu主频
- HDU2037 今年暑假不AC
- c++进阶---IO类的详细介绍(一)
- 游戏UI框架设计(二)