所以我想使用一个按钮来引导一个新的活动,它可以在两个整数(小时和分钟)之间进行选择而不是设置警报。或者也许做一些不同的事情来获取这些int的价值并改变它们?有没有更好的方法来编码呢?
到目前为止,我的代码就是这样 - 我到目前为止做得对吗?
public class AlarmPtest extends Activity implements android.view.View.OnClickListener{
/** Called when the activity is first created. */
Button SetAlarm, SetTimer;
int hours = 1, min = 30;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Vars();
}
private void AlarmClock() {
// TODO Auto-generated method stub
Intent i = new Intent(android.provider.AlarmClock.ACTION_SET_ALARM);
i.putExtra(android.provider.AlarmClock.EXTRA_HOUR, hours);
i.putExtra(android.provider.AlarmClock.EXTRA_MINUTES, min);
startActivity(i);
}
private void Vars() {
// TODO Auto-generated method stub
SetAlarm = (Button) findViewById(R.id.SetAlarm);
SetTimer = (Button) findViewById(R.id.TimerAlarm);
SetAlarm.setOnClickListener(this);
SetTimer.setOnClickListener(this);
}
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()){
case R.id.SetAlarm:
Toast alarmToast = Toast.makeText(this, "you click alarm", Toast.LENGTH_LONG);
alarmToast.show();
AlarmClock();
case R.id.TimerAlarm:
Toast TimerToast = Toast.makeText(this, "you get 15 min", Toast.LENGTH_LONG);
TimerToast.show();
hours = 0 ;
min = 15;
AlarmClock();
}
}
}
答案 0 :(得分:1)
您的代码是正确的,因为您的小时和分钟将在警报意图中显示。如果用户拥有Android SDK> = 9
,则会设置闹钟BTW中的一个常见代码约定,即Android,是编写以smallLetters开头的函数名。因此,将您的功能更改为:
private void alarmClock()
private void vars()
否则,人们可能会得到您引用课程的印象。变量名称使用相同的约定,因此您还需要更改按钮:
Button setAlarm, setTimer;
答案 1 :(得分:0)
您可能希望使用TimePicker
。这为选择报警时间提供了一个很好的界面。它出现在AlertDialog
类型的界面中,因此您无需启动新的Activity
来选择时间。