Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
nilamop
0 / 0 / 0
Регистрация: 23.05.2013
Сообщений: 22
#1

Как создать анонимный об. GregorianCalendar с поступающими hour и minute? - Программирование Android

19.10.2014, 15:02. Просмотров 470. Ответов 4
Метки нет (Все метки)

Вот код где я успешно использовал полученые данные и присвоил их в конце нужному объекту(mDate(15 строка)).
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// создание объекта Calendar для получения года, месяца и дня
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(mDate);
        int year = calendar.get(Calendar.YEAR);
        int month = calendar.get(Calendar.MONTH);
        int day = calendar.get(Calendar.DAY_OF_MONTH);
 
        View v = getActivity().getLayoutInflater()
                .inflate(R.layout.dialog_date, null);
 
        DatePicker datePicker = (DatePicker)v.findViewById(R.id.dialog_date_datePicker);
        datePicker.init(year, month, day, new OnDateChangedListener() {
            public void onDateChanged(DatePicker view, int year, int month, int day) {
                // Преобразование года, месяца и дня в объект Date
                mDate = new GregorianCalendar(year, month, day).getTime();
 
                    // объявление аргумента для сохранения
                    // выбраного значения при повороте
                getArguments().putSerializable(EXTRA_DATE, mDate);
            }
        });
Задача схожий вариант разработать с временем, используя фрагмент TimePicker.
Проблема в том, что я не знаю как правильно инициализировать для обекта значения, чтобы подобное повторить с этим фрагментом.(строка 12 кода выше).

Ниже демонстрирую свои неудачные попытки. Строка 25 является ошибочной точно.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
@Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        mTime = (Date)getArguments().getSerializable(EXTRA_TIME);
 
        // создание объекта Calendar для получения часов и минут
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(mTime);
        int hour = calendar.get(Calendar.HOUR);
        int minute = calendar.get(Calendar.MINUTE);
        int second = calendar.get(Calendar.SECOND);
        int year = calendar.get(Calendar.YEAR);
        int month = calendar.get(Calendar.MONTH);
        int day = calendar.get(Calendar.DAY_OF_MONTH);
 
        View v = getActivity().getLayoutInflater()
                .inflate(R.layout.dialog_time, null);
 
        TimePicker timePicker = (TimePicker)v.findViewById(R.id.dialog_time_timePicker);
        timePicker.setCurrentHour(hour);
        timePicker.setCurrentMinute(minute);
 
        timePicker.setOnTimeChangedListener(new OnTimeChangedListener() {
         @Override
          public void onTimeChanged(TimePicker timePicker, int hour, int minute) {
             mTime = new GregorianCalendar().getTime(hour, minute);
             // объявление аргумента для сохранения
             // выбраного значения при повороте
             getArguments().putSerializable(EXTRA_TIME, mTime);                                    
            }
        });
Спастбо на перед всем, кто поможет разобраться.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.10.2014, 15:02
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как создать анонимный об. GregorianCalendar с поступающими hour и minute? (Программирование Android):

Как отсортировать массив объектов по GregorianCalendar? - Java SE
Есть класс WorkDay (1): public class WorkDay { private GregorianCalendar date; public GregorianCalendar getDate() { return date; } ...

Почему из интерфейса можно создать анонимный класс? - Java SE
Где почитать или объясните как это возможно. OnClickListener это - public static interface View.OnClickListener ...

Как играть по интернету в C&C Generals Zero Hour - Contra 007? - Стратегии
Привет форумчани!!!Как играть в C&C Generals zero Hour - Contra 007 по интернету , я хамачи скачал !!!Как в нее теперь играть???Подскажите...

Как определить, что тип анонимный? - C#
Как по типу определить анонимность var type =new {id = 5, s = "sss"}.GetType(); type.???

Как обеспечить себе анонимный интернет? - Wi-Fi
Здравствуйте форумчане. Я впервые на Вашем форуме. Возникла необходимость обеспечить неотслеживаемый интернет. Бюджеты очень малы, но...

Получение координат раз в n минут в бэкграунде. Get location every n minute in background - Objective-C
Всем привет! Как получать координаты раз в n минут и так, чтобы это работало еще и в бэкграунде ? Может кто-то реализовывал подобное и...

4
CoolMind
421 / 404 / 65
Регистрация: 06.10.2012
Сообщений: 1,734
19.10.2014, 20:23 #2
nilamop, http://developer.alexanderklimov.ru/android/views/timepicker.php
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
timepicker = (TimePicker) findViewById(R.id.timePicker1);
        
        Calendar now = Calendar.getInstance();
 
        timepicker.setCurrentHour(now.get(Calendar.HOUR_OF_DAY));
        timepicker.setCurrentMinute(now.get(Calendar.MINUTE));
                timepicker.setIs24HourView(true); // формат 24 часа
        timepicker.setOnTimeChangedListener(new OnTimeChangedListener() {
 
            @Override
            public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
                Toast.makeText(getApplicationContext(), "onTimeChanged",
                        Toast.LENGTH_SHORT).show();
 
                tvInfo.setText("Часы: " + hourOfDay + "\n" + "Минуты: "
                        + minute);
            }
        });
0
nilamop
0 / 0 / 0
Регистрация: 23.05.2013
Сообщений: 22
19.10.2014, 20:35  [ТС] #3
Вы хоть читали мой пост?

Попробую объяснить еще раз. Мне надо в фрагменте реализовать TimePicker. Сначала получить текущее время системы и с ним запустить виджет. Потом в случае изменения(или не), в виджете значений отправить их переменной(объекту). Который будет использоваться совершенно в другом фрагменте. Главная моя проблема это "запись" этих значений в объект(если конечно мой код верен).
0
CoolMind
421 / 404 / 65
Регистрация: 06.10.2012
Сообщений: 1,734
19.10.2014, 21:29 #4
nilamop, вообще, это всё интересно. Я с фрагментами мучаюсь четвёртый месяц, а вот про передачу параметров не знал, использовал или конструктор, или глобальные статические переменные (что нехорошо). Вот неплохая статья на эту тему: http://tttzof351.blogspot.ru/2014/06/android.html.
Скажите, а вы создаёте другой фрагмент сразу после установки времени? Если нет, можете также записывать значение в промежуточный файл, а затем брать оттуда (SharedPreferences).

Добавлено через 12 минут
Товарищ, вы лучше бы сразу объяснили задачу. Правильно ли я понял, что у вас есть некоторый другой фрагмент, из которого вы вызываете этот, устанавливаете время, а затем полученное время возвращаете в тот, другой, фрагмент?
Если так, то тут есть уйма решений. Например, можно попробовать через interface (listener). Обычно этот способ используется для активностей и фрагментов, но, наверное, можно и между фрагментами. http://startandroid.ru/ru/uroki/vse-...vie-s-activity
http://stackoverflow.com/questions/1...ck-to-activity
0
nilamop
0 / 0 / 0
Регистрация: 23.05.2013
Сообщений: 22
23.10.2014, 17:10  [ТС] #5
У меня есть фрагмент с списком, при нажатии на пунк создается новый фрагмент с кнопками, одна вызывает выджет с работой даты, другая с работой с временем. Пытался реализовать возвращение в список первого фрагмента данных из виджета "часы". С виджетом "дата" все успешно выходит так как использовал метод init. Буду изучать ваши ссылки. Спасибо.
0
23.10.2014, 17:10
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.10.2014, 17:10
Привет! Вот еще темы с ответами:

Работа с классом GregorianCalendar - Java
Hello world! Возникла проблема при создании трех комбобоксов работающих с объектом класса GregorianCalendar. Комбобоксы задают дату на...

Рандомная дата GregorianCalendar и непонятки с конструктором - Java SE
Создал класс Student, у которого имеется поле GregorianCalendar birthday. Рандомную дату реализовал следующим способом. //birthday...

Получение текущего времени с объекта GregorianCalendar - Java SE
Не могу понять как можно получить текущее время из объекта GregorianCalendar не создавая его заново. Может что то провтыкал в API. ...

Один и тот же результат при использовании Calendar и GregorianCalendar - Java SE
Всем привет, Сейчас читаю книгу, там в примерах доступ к методам класса GregorianCalendar описан таким образом: GregorianCalendar...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.