-1

I am developing snooze functionality for alarm app, i am using spinner for selecting snooze mins, by default it is selecting as first array int value, but alarm is not rising on snooze time. by default it should not select any value, user need to select. is there any other way to do it , this is not working .

    spinner_snooze = (Spinner) findViewById(R.id.spinner1);   
    String[] array = getResources().getStringArray(R.array.snooze_time);
    Integer[] intArray = new Integer[array.length];

    for(int i = 0; i < array.length; i++) {
        intArray[i] = Integer.parseInt(array[i]);
    }

    ArrayAdapter<Integer> adapter = new ArrayAdapter<Integer>(this,
            android.R.layout.simple_spinner_dropdown_item, intArray);
    spinner_snooze.setAdapter(adapter);
    spinner_snooze.setSelected(false);

    spinner_snooze.setOnItemSelectedListener(new OnItemSelectedListener() {
        @Override
        public void onItemSelected(AdapterView<?> parent, View view,
                int position, long id) {
            // TODO Auto-generated method stub
            AlarmManager mAlarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);

            Integer i =  (Integer) spinner_snooze.getSelectedItem();

            snoozeAlarm(i, mAlarmManager, context);
        //  Toast.makeText(getApplicationContext(), x,  Toast.LENGTH_LONG).show(); 
            finish();

        }

        @Override
        public void onNothingSelected(AdapterView<?> parent) {
            // TODO Auto-generated method stub

        }
    });
Anwesh Kumar
  • 23
  • 1
  • 3

1 Answers1

0

Change this

Integer i =  (Integer) spinner_snooze.getSelectedItem();

to

Integer i =  (Integer) parent.getSelectedItem();

Plus add any default value as first item.Check if first item is selected,than do not do anything.

insert a default value like " -- " and compare it by using

if(parent.getSelectedItem().compareTo(" -- ")== 0
  {      
      //Do Nothing 
  } 
  else 
  {
       //Do your stuff here

      AlarmManager mAlarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);

        Integer i =  (Integer) spinner_snooze.getSelectedItem();

        snoozeAlarm(i, mAlarmManager, context);
    //  Toast.makeText(getApplicationContext(), x,  Toast.LENGTH_LONG).show(); 
        finish();
   }
Neal Ahluvalia
  • 1,538
  • 1
  • 10
  • 20