Size: a a a

Android Developers

2020 April 03

A

Albert in Android Developers
Ребят, подскажите. Можно ли как-то немного видоизменить стандартную вьюху? Например, есть timebar(exoplayer), на его шкалу нужно добавить вертикальные полоски(ключевые моменты). Как этого можно добиться?
источник

E

ERiC in Android Developers
наследоваться от таймбара и рисовать по канвасу?
Первое что пришло в голову :)
источник

E

ERiC in Android Developers
Вариант №2, обернуть таймбар в FrameLayout
источник

n

nasSA in Android Developers
Всем доброе утро. Такая задача, надо сделать интерактивную обучалку на экран. Весь экран в тени и поочереди подсвечиваются какие то компоненты экрана и описывается зачем оно нужно. Такой вопрос, как сделать, чтобы кроме определенных вьюх, весь остальной экран был в тени. Или мб есть какой то другой способ реализовать это. Буду признателен !
источник

M

Maksym in Android Developers
Всем привет! Борюсь с Deferred в Сoroutines при запросе получаю ошибку Unable to invoke no-args constructor for kotlinx.coroutines.Deferred<net.kinoxxl.bemovie.data.model.GenreResponce>. Registering an InstanceCreator with Gson for this type may fix this problem.
источник

M

Maksym in Android Developers
Сам интерфейс interface NetworkService {
   @GET("/{api_version}/genre/movie/list")
   suspend fun getGenre(
       @Path("api_version") api_version: String,
       @Query("api_key", encoded = true) api_key: String,
       @Query("language") language: String): Deferred<GenreResponce>
}
источник

A

Albert in Android Developers
ERiC
наследоваться от таймбара и рисовать по канвасу?
Первое что пришло в голову :)
за канвас я тоже подумал, но т.к. раньше ничего подобного не делал, то не знаю с чего начать. У тебя случаем нет под рукой какого-нибудь примера?
источник

А

Андрей in Android Developers
Maksym
Всем привет! Борюсь с Deferred в Сoroutines при запросе получаю ошибку Unable to invoke no-args constructor for kotlinx.coroutines.Deferred<net.kinoxxl.bemovie.data.model.GenreResponce>. Registering an InstanceCreator with Gson for this type may fix this problem.
А зачем тебе deferred вообще? У тебя suspend же написано.

Просто убери его и оставь обычный тип. И все заработает.
источник

E

ERiC in Android Developers
Albert
за канвас я тоже подумал, но т.к. раньше ничего подобного не делал, то не знаю с чего начать. У тебя случаем нет под рукой какого-нибудь примера?
сек
источник

M

Maksym in Android Developers
Андрей
А зачем тебе deferred вообще? У тебя suspend же написано.

Просто убери его и оставь обычный тип. И все заработает.
С обычным работает, но тогда и выполнять этот запрос надо val genreRequest = networkService.getGenre(TMDB_API_VER, TMDB_API_KEY, TMDB_LANGUAGE).await() без await. Насколько это хорошо?
источник

А

Андрей in Android Developers
Maksym
С обычным работает, но тогда и выполнять этот запрос надо val genreRequest = networkService.getGenre(TMDB_API_VER, TMDB_API_KEY, TMDB_LANGUAGE).await() без await. Насколько это хорошо?
Так так и надо.
У Deferred  вообще другое предназначение.
Это просто когда suspend не поддерживался в retrofit, то через deferred работали+converter от вортона.
источник

SO

Sergey Onischuk in Android Developers
Всем привет. Народ подскажите по  софт клавиатуре, при закрытии окна и возврате в программу ни в какую не хочет восстанавливать клавиатуру пока не кликнешь в Edittext (он в фрагменте) , но при первом открытии этого фрагмента в программе клавиатура появляется. Чего ему надо ?
источник

SO

Sergey Onischuk in Android Developers
val imm: InputMethodManager? = requireContext().getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
           imm?.showSoftInput(sms1,InputMethodManager.SHOW_IMPLICIT)
источник

SO

Sergey Onischuk in Android Developers
Этот код в onResume
источник

M

Maksym in Android Developers
Андрей
Так так и надо.
У Deferred  вообще другое предназначение.
Это просто когда suspend не поддерживался в retrofit, то через deferred работали+converter от вортона.
Я ставил себе конвертер этот GsonConverterFactory и адаптер этот CoroutineCallAdapterFactory. Насколько актуально с корутинами как то до этого не работал, как и с koin
источник

SO

Sergey Onischuk in Android Developers
GenreResponce Имеет конструктор без параметров? @fedchuk
источник

SO

Sergey Onischuk in Android Developers
@fedchuk  Но лучше ответ завернуть в Response,  Deffered<Response<GenrrResponce». Будешь видеть статус код ответа, пригодиться потом
источник

А

Андрей in Android Developers
Maksym
Я ставил себе конвертер этот GsonConverterFactory и адаптер этот CoroutineCallAdapterFactory. Насколько актуально с корутинами как то до этого не работал, как и с koin
Suspend в ретрофите поддерживается из коробки  там call factory не нужна.

А если нужны статусы и прочее в Responce ответ оберните просто.

Deferred это оверхед.
источник

M

Maksym in Android Developers
Андрей
Suspend в ретрофите поддерживается из коробки  там call factory не нужна.

А если нужны статусы и прочее в Responce ответ оберните просто.

Deferred это оверхед.
Для получения ответа я делал подобную конструкцию во фрагменте через лайвдату             splashViewModel.responceLiveData.observe(viewLifecycleOwner, Observer {
                   response ->
               when(response) {
                   is Response.Loading -> {
                       Log.d(TAG, "Loading")
                       splashViewModel.isLoadingLiveData.postValue(true)
                   }
                   is Response.Success -> {
                       Log.d(TAG, "Success")
                       splashViewModel.isLoadingLiveData.postValue(false)
                       findNavController().navigate(R.id.action_splashFragment_to_mainFragment)
                   }
                   is Response.Error -> {
                       Log.d(TAG, "Error!")
                       response.throwable?.getErrorMessage(requireContext())?.toast(requireContext())
                       splashViewModel.isLoadingLiveData.postValue(false)
                   }
               }
   splashViewModel.getGenre() не знаю насколько это хорошо
источник

AA

Ali Agzamov in Android Developers
Sergey
Всем привет, подскажите, пожалуйста, есть фрагмент с вью пейджером и табом, я его удаляю (функция по ссылке:  https://pastebin.com/NktTXWp8), после чего, если я зайду на другую активность и вернусь, у меня вызывается onResume на фрагменте во вью пейджере, почему так и как это исправить? Пробовал чистить бэкстек, результат такой же
источник