Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
 
_Night_Scream_
55 / 67 / 7
Регистрация: 08.08.2013
Сообщений: 545
#1

Вывести время в toolbar - Android

30.12.2015, 11:19. Просмотров 211. Ответов 10
Метки нет (Все метки)

Привет.

Извиняйте за нубский вопрос, но как самое просто вывести текущее время.
Как разместить\получить и отформатировать время я знаю, вопрос в том нет ли уже готовыз каких то простых механизмов для вывода времени, или нужно создавать отдельный поток или таймер и через handler обновлять на главном активити?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
30.12.2015, 12:17     Вывести время в toolbar #2
Java
1
setTitle("московское время ноль часов ноль минут");
_Night_Scream_
55 / 67 / 7
Регистрация: 08.08.2013
Сообщений: 545
30.12.2015, 12:19  [ТС]     Вывести время в toolbar #3
Rube, вы не поняли вопроса.
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
30.12.2015, 12:38     Вывести время в toolbar #4
_Night_Scream_,
Вывести время в toolbar - вот на этот вопрос ответ.
_Night_Scream_
55 / 67 / 7
Регистрация: 08.08.2013
Сообщений: 545
30.12.2015, 12:42  [ТС]     Вывести время в toolbar #5
Rube, "Как разместить\получить и отформатировать время я знаю, вопрос в том нет ли уже готовыз каких то простых механизмов для вывода времени, или нужно создавать отдельный поток или таймер и через handler обновлять на главном активити?"

Время нужно получать постоянно, а создавать таймеры, отдельные потоки, убирать поток при закрытии активити и создавать опять при открытии активити ну слишком дохрена работы для такой простой задачи.
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
30.12.2015, 13:00     Вывести время в toolbar #6
Сервис и BroadcastReceiver может? В сервисе получаем время - вызываем броадкаст и меняем тулбар.
_Night_Scream_
55 / 67 / 7
Регистрация: 08.08.2013
Сообщений: 545
30.12.2015, 13:05  [ТС]     Вывести время в toolbar #7
Rube, да и эти механизмы огромны для такой простой задачи.
блин, задача проще разве что по клику на button вывести toast, казалось бы.
всего-то отобразить HH:mm...
ищу как можно меньше строк кода решение.
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
30.12.2015, 13:07     Вывести время в toolbar #8
Чего там кода то. Сервис максимум 15-20 строк и в активити регистрация BroadcastReceiver и сам он еще 10 строк.
YuraAAA
1564 / 1306 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
30.12.2015, 20:44     Вывести время в toolbar #9
Rube, а зачем Service и BroadcastReceiver для такой задачи?ОО
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
30.12.2015, 21:51     Вывести время в toolbar #10
YuraAAA, ну а почему нет?
Цитата Сообщение от _Night_Scream_ Посмотреть сообщение
Время нужно получать постоянно
тут сервис поможет, а из него sendBroadcast в активити для изменения тулбара, не?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.12.2015, 11:08     Вывести время в toolbar
Еще ссылки по теме:

Android Searchview в toolbar
Android Toolbar для приложения
Android Меню в Toolbar
Android OnLongClick на toolbar menu
Android Toolbar отображается ненормально

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

Или воспользуйтесь поиском по форуму:
Паблито
2014 / 1756 / 546
Регистрация: 12.05.2014
Сообщений: 6,215
Завершенные тесты: 1
31.12.2015, 11:08     Вывести время в toolbar #11
если время в тулбар то сервис особо и не нужен, имхо
1. в активити создаем таймер
Java
1
    private final Timer timer = new Timer();
2. в той же активити создаем метод, копипастим, но у меня просто вывод миллисекунд
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    private void initTimer(final Toolbar toolbar) {
        final Handler handler = new Handler();
        timer.schedule(new TimerTask() {
            @Override
            public void run() {
                handler.post(new Runnable() {
                    @Override
                    public void run() {
                        long time = System.currentTimeMillis();
                        if (toolbar != null) toolbar.setTitle("" + time);
                    }
                });
            }
        }, 0, 1000);
3. в onCreate() после того как тулбар уже создали вызываем наш убер-метод
Java
1
        initTimer(toolbar);
4. в onStop() таймер останавливаем, не нужно плодить потоки
Java
1
2
3
4
5
    @Override
    protected void onStop() {
        super.onStop();
        timer.cancel();
    }
5. PROFIT
Yandex
Объявления
31.12.2015, 11:08     Вывести время в toolbar
Ответ Создать тему
Опции темы

Текущее время: 15:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru