Комментарии 9
Мы написали свою реализацию. Поскольку для нас использование Rx в проекте – архитектурное решение, выглядит это так:
abstract class BasePresenter<V : MvpView> : MvpPresenter<V>() {
private val compositeDisposable = CompositeDisposable()
override fun onDestroy() {
compositeDisposable.dispose()
}
protected fun Disposable.disposeOnDestroy() {
compositeDisposable.add(this)
}
}
Спасибо за дополняющий комментарий! Вы правы. Форматирование даты и времени согласно региональным стандартам довольно обширная тема и заслуживает отдельной статьи. Чтобы сохранить легкость подачи и лаконичность данной статьи, решили эту тему не затрагивать. Возможно, поговорим об этом на нашем YouTube канале или напишем еще одну статью.
Для этого можно использовать идентификатор системы счисления Unicode.
Locale.forLanguageTag("zh-CN-u-nu-hant")
Символ u
определяет Unicode-расширения локали, которые идут далее парами ключ-значение. nu
(numbers) – это система счисления. hant
– традиционные китайские цифры. Другие допустимые значения можно посмотреть в репозитории CLDR.
Но. Поддержка расширений классом Locale
не гарантирует поддержку со стороны платформы. При использовании java.text.NumberFormat
на андроиде эффекта не будет. А если напрямую использовать android.icu.text.NumberFormat
, то числа смапятся ¯\_(ツ)_/¯
Пожалуй затащу это решение на текущий проект :)
Переключение языка в Android-приложении