2012-04-02 110 views
12

我对Android很陌生,但已经有一些Java本身的经验。现在我想建立一个应用程序,要求时间和日期,然后设置闹钟。 我已经浏览了google apis和很多其他的东西,但是我不明白它或它已经过时。初学者的AlarmClock - Android

任何人都可以帮助我设置闹钟,同时解释它的工作原理吗?

谢谢:)

+0

你见过这个吗? http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/index.html#Alarm – user931366 2012-04-02 21:09:51

回答

14

这是10版的工作代码,您需要建立一个意图开始的AlarmClock的新实例。请务必将常量EXTRA_HOUR和EXTRA_MINUTE分配给您自己的变量名称或硬编码常量。在这个例子中,它们被编码为用户输入的时间(位于java.util.Calendar中)。

Intent openNewAlarm = new Intent(AlarmClock.ACTION_SET_ALARM); 
     openNewAlarm.putExtra(AlarmClock.EXTRA_HOUR, hour_alarm); 
     openNewAlarm.putExtra(AlarmClock.EXTRA_MINUTES, minute_alarm); 
     startActivity(openNewAlarm); 

下一节从内部时钟获取当前时间,并返回其在TimePicker在这里,用户可以在下一个输入新的时间,并将其返回意向设置一个新的警报。

public Dialog onCreateDialog(Bundle savedInstanceState) { 
     // Use the current time as the default values for the picker 

     final Calendar c = Calendar.getInstance(); 
     hour_local = c.get(Calendar.HOUR_OF_DAY); 
     minute_local = c.get(Calendar.MINUTE); 

     // Create a new instance of TimePickerDialog and return it 
     return new TimePickerDialog(getActivity(), this, hour_local, minute_local, 
       DateFormat.is24HourFormat(getActivity())); 
    } 

要使用TimePicker创建一个内部静态类,一个是活动的调用它的内部。看看这个http://developer.android.com/reference/android/widget/TimePicker.html

+0

为什么downvote? – 2012-09-29 01:37:56

+0

对于人们来说(比如我)打入这篇文章的一件事就是它使用了一个不推荐的方法:在[Activity](http://developer.android.com/reference/android/app/Activity)中的'onCreateDialog'。 html)这些天他们使用'DialogFragment'列出这个[对话框指南](http://developer.android.com/guide/topics/ui/controls/pickers.html) – pellekrogholt 2014-09-05 08:56:21

+4

一个人的“弃用”是另一个人的“适用于旧设备“。 – 2015-07-06 23:26:34