Установка пользовательской даты в календарь Android

#android #events #date #time #calendar

#Android #Мероприятия #Дата #время #Календарь

Вопрос:

Я создаю приложение и пытаюсь заставить функциональность календаря работать должным образом. Пока событие добавляется, но я не могу правильно указать пользовательскую дату. Я считаю, что это может быть формат, но я изо всех сил пытаюсь исправить это.

Код, который я получил, выглядит следующим образом:

 @Override
    public void onItemClick(AdapterView<?> adp, View v, int position, long id) 
    {
        FixtureSupport fixture = (FixtureSupport) adapter.getItem(position);

        try
        {
            SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
            Date date = (Date)formatter.parse("10/05/2012");

            Intent event = new Intent(Intent.ACTION_EDIT);
            event.setType("vnd.android.cursor.item/event");
            event.putExtra("title", "Rugby Match");
            event.putExtra("description", fixture.getHome()   " V "   fixture.getAway());
            event.putExtra("eventLocation", fixture.getVenue());
            event.putExtra("hasAlarm", 1);
            event.putExtra("startTime", date);
            startActivity(event);
        }
        catch (Exception e)
        {
            System.err.println("Error");
        }
    }
  

Когда я нажимаю на элемент на экране, заголовок / описание / местоположение все работают. Но когда я пытаюсь установить время начала (дату события), это не сработает. В настоящее время, когда я создаю событие, которое должно начаться завтра, в нем говорится, что событие начнется через 1 минуту!

Помощь будет оценена, спасибо, ребята!

Ответ №1:

Вы пробовали:

 event.putExtra("startTime", "10/05/2012");
  

И когда вы обращаетесь к переданным переменным:

 SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
Date date = formatter.parse(bundle.getString("startTime"));
  

Комментарии:

1. Это должно сработать, пожалуйста, опубликуйте код, в котором вы читаете переданные переменные.