Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private Dialog AddAlarm(){
- AlertDialog.Builder builder = new AlertDialog.Builder(this);
- LayoutInflater inflater = getLayoutInflater();
- final View view = inflater.inflate(R.layout.addalarm, null);
- final TimePicker timePicker = (TimePicker)view.findViewById(R.id.timepicker);
- final Spinner name = (Spinner)view.findViewById(R.id.name);
- dataAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, solat);
- dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
- name.setAdapter(dataAdapter);
- builder.setTitle("Tambah Alarm");
- builder.setView(view);
- builder.setPositiveButton("Simpan", new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- // TODO Auto-generated method stub
- // Toast.makeText(MainActivity.this, String.valueOf(name.getSelectedItemPosition()), Toast.LENGTH_LONG).show();
- // creating alarm
- alarmDataSource = new AlarmDataSource(MainActivity.this);
- alarmCalendar = Calendar.getInstance();
- alarmCalendar.setTimeInMillis(System.currentTimeMillis());
- alarmCalendar.set(Calendar.HOUR_OF_DAY, timePicker.getCurrentHour());
- alarmCalendar.set(Calendar.MINUTE, timePicker.getCurrentMinute());
- intent = new Intent(MainActivity.this, MyBroadcastReceiver.class);
- intent.putExtra("ID", String.valueOf(name.getSelectedItemPosition()));
- pendingIntent = PendingIntent.getBroadcast(MainActivity.this, name.getSelectedItemPosition(), intent, 0);
- alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
- alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, alarmCalendar.getTimeInMillis(), AlarmManager.INTERVAL_DAY, pendingIntent);
- ComponentName receiver = new ComponentName(MainActivity.this, MyBroadcastReceiver.class);
- PackageManager pm = getPackageManager();
- pm.setComponentEnabledSetting(receiver,
- PackageManager.COMPONENT_ENABLED_STATE_ENABLED,
- PackageManager.DONT_KILL_APP);
- // alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, alarmCalendar.getTimeInMillis(), 1000 * 60 * 1, pendingIntent);
- // Toast.makeText(MainActivity.this, "Alarm set in " + 60 + " seconds", Toast.LENGTH_LONG).show();
- // initialize calendar instance object
- // currentCalendar = Calendar.getInstance();
- // alarmCalendar = Calendar.getInstance();
- //Initialize Seconds and Milliseconds to 0 for both calendars
- // currentCalendar.set(Calendar.SECOND, 0);
- // currentCalendar.set(Calendar.MILLISECOND, 0);
- // alarmCalendar.set(Calendar.SECOND, 0);
- // alarmCalendar.set(Calendar.MILLISECOND, 0);
- // set alarm time hour:minute
- // alarmCalendar.setTimeInMillis(System.currentTimeMillis());
- // alarmCalendar.set(Calendar.HOUR_OF_DAY, 23);
- // alarmCalendar.set(Calendar.MINUTE, 25);
- // alarmCalendar.set(Calendar.HOUR_OF_DAY, alarmCalendar.get(Calendar.HOUR_OF_DAY));
- // alarmCalendar.set(Calendar.MINUTE, alarmCalendar.get(Calendar.MINUTE));
- //If Alarm Time is now or in the past, set it for tomorrow 24 hours in advance from time selected
- // if (alarmCalendar.getTimeInMillis() <= currentCalendar.getTimeInMillis()) {
- // alarmCalendar.add(Calendar.HOUR, 24);
- // }
- // set the alarm
- // alarmManager.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis()+ (20 * 1000), pendingIntent);
- // alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, alarmCalendar.getTimeInMillis(), 1000 * 60 * 1, pendingIntent);
- // write to local database
- alarmDataSource.openToWrite();
- alarmDataSource.InsertAlarm(name.getItemAtPosition(name.getSelectedItemPosition()).toString(), String.valueOf(timePicker.getCurrentHour()), String.valueOf(timePicker.getCurrentMinute()), String.valueOf(name.getSelectedItemPosition()));
- alarmDataSource.close();
- // Toast.makeText(getApplicationContext(), "Alarm set! " + String.valueOf(alarmCalendar.get(Calendar.HOUR_OF_DAY)) + " : " + String.valueOf(alarmCalendar.get(Calendar.MINUTE)), Toast.LENGTH_LONG).show();
- ShowAlarm();
- }
- });
- builder.setNegativeButton("Batal", null);
- return builder.create();
- }
Advertisement
Add Comment
Please, Sign In to add comment