Intereting Posts
Какие приложения в Google Play построены с использованием Qt? Gradle 4.0 Невозможно найти подходящую конфигурацию Android listview отображает все доступные элементы без прокрутки со статическим заголовком Событие синхронизации с календарем google от android Имя оператора мобильной связи Trace ActionBar Шерлок Пункт меню OnClick Возможно ли создать службу Android, которая прослушивает аппаратные нажатия клавиш? Как сделать мой ImageView фиксированным, независимо от размера растрового изображения Android Retrofi 2, различия между addInterceptor & addNetworkInterceptor для редактирования ответов Отменить регистрацию вещательного приемника, зарегистрированного через манифест Создание файла .so для OpenH264 android Фрагмент onCreateView и onActivityCreated вызывается дважды Как получить возможную продолжительность простоя телефона на основе текущего уровня заряда аккумулятора ActionLayout для элементов навигации отображается с правой стороны Как получить контактный номер с помощью контактного идентификатора

Разделение часов с минут в заданное значение времени

В настоящее время я работаю над простым приложением Time-Manager для Android-устройств. Моя проблема: я получаю значение времени (похожее на это -> 6:51 ) с сервера. Теперь я хочу отделить часы и минуты, и я хочу, чтобы значение постоянно обновлялось .

Я уже заглянул в joda-время, но ничего не могу найти сам, что бы решить мою проблему, если есть решение в joda-время вообще.

Должен ли я попытаться извлечь цифры и построить из них свой формат времени или есть лучшее и более простое решение? В случае, если вы рекомендуете мне извлечь цифры, как решить проблему с часами выше 9.

Спасибо за помощь и извините за плохой английский.

Разделите время.

String time="6:51" //which is from server; String splitTime[]=time.split(":"); String hours=splitTime[0]; String minutes=splitTime[1]; 

Если строка, которая у вас есть, находится в формате hh:mm , вы можете использовать String.split для их разделения.

 String arr [] = time.split(":"); 

Вы получаете время от сервера как String "6:51" ?

Org.joda.time.LocalTime # parse (String) поможет вам. LocalTime представляет время без даты. После синтаксического анализа String вы сможете вызвать методы getHourOfDay,getMinuteOfHour .

Просто проанализируйте значение времени как String и используйте split для разделения часов и минут. Затем вы можете преобразовать его в int снова для использования в будущем.

 String Time = (String) time; String Hour=time.split(":")[0]; String Minute=time.split(":")[1]; //If you want to use Hour and Minute for calculation purposes: int hour=Integer.parseInt(Hour); int minute=Integer.parseInt(Minute); 

Не должно быть никаких проблем, если часы> 9

В Joda-Time 2.5.

 LocalTime localTime = LocalTime.parse( "6:51" ); int hour = localTime.getHourOfDay(); int minute = localTime.getMinuteOfHour();